我有一个从csv文件中获得的数据帧(经过一些筛选后),如下所示:
df3.head(n = 10)
DateTime Det_ID Speed
16956 2014-01-01 07:00:00 1201085 65.0
16962 2014-01-01 07:00:00 1201110 69.5
19377 2014-01-01 08:00:00 1201085 65.0
19383 2014-01-01 08:00:00 1201110 65.0
21798 2014-01-01 09:00:00 1201085 65.0
21804 2014-01-01 09:00:00 1201110 65.4
75060 2014-01-02 07:00:00 1201085 64.9
75066 2014-01-02 07:00:00 1201110 66.1
77481 2014-01-02 08:00:00 1201085 65.0
77487 2014-01-02 08:00:00 1201110 62.5
这表示在一天的不同时间由不同的探测器(现在是两个)测量的速度。我已将DateTime列转换为DateTime对象。在
我需要知道每个探测器的最小每日速度值。在
基本上,像这样的东西,我可以用来建立一个热度图。在
^{pr2}$显然,我使用pivot表的方式是不正确的,因为我得到了多个每日速度值,而不仅仅是一个。我怀疑这是因为最小值是在每个唯一的日期时间字段上计算的,而不仅仅是日期部分。在
也在尝试groupby选项。在
list(df3.groupby(['DateTime'], sort = False)['Speed'].min())
但它只给出了一个数字列表,没有任何其他列。在
65.0,
65.0,
65.0,
64.900000000000006,
62.5,
64.200000000000003,
54.700000000000003,
62.600000000000001,
64.799999999999997,
59.5,
等等
如何仅隔离DateTime字段中的日期部分?我走的方向对吗?谢谢。在
或使用
unstack
调用
.dt.strftime
并重新格式化DateTime
列。在现在,请致电
^{pr2}$pivot_table
:相关问题 更多 >
编程相关推荐