使用DateTime索引检索PANDAS DataFrame的特定时间间隔



我有一个带有DateTime索引的Pandas DataFrame。假设DateTime索引从时间T1开始,PANDAS是否有办法可以从时间t1开始的每个说明15分钟的时间间隔返回数据框的行?

此外,是否可以平均平均这些15分钟间隔之间的所有条目并返回?

Datetime            Value
2018-10-08 00:00:01 100.70
2018-10-08 00:00:20 98.70
2018-10-08 00:00:34 112.60
2018-10-08 00:00:00 38.30
2018-10-08 00:01:02 60.30
2018-10-08 00:01:24 115.85
2018-10-08 00:02:00 76.10

当前,我通过制作自己的time_intervals并使用_time来解决此问题1小时长的间隔,但是我觉得使用Pandas DateTime索引应该有一种更加贴切的方法来实现此操作。

time_intervals=[("{}:00:00".format(i),"{}:00:00".format(i+1)) for i in range(23)]

means_list=[df.between_time(time_interval[0],time_interval[1]).mean()[0] for time_interval in time_intervals]

"我有一个带有DateTime索引的Pandas DataFrame。假设DateTime 索引从时间T1开始,Pandas有没有办法返回行 从每次15分钟时间间隔开始的数据框 时间T1?"

最好通过使用重新样本来解决:如果要获得给定时间块的第一个元素,请使用

df.resample('15m').first()

但是,如果您想在给定的时间块中获取最后一个元素,则应使用

df.resample('15m').last()

"此外,是否有可能平均所有条目 15分钟的间隔并返回这些?"

是的,这也可以使用resample

完成
df.resample('15m').mean()

最新更新