【发布时间】:2017-02-27 19:44:46
【问题描述】:
大家好,我有一个 cvs 文件,其中包含每小时间隔一个月的数据。我需要在整个月的 12:00am-3:00am 的时间间隔内获取其中一列的平均值。我正在使用 pandas.DataFrame 来尝试这样做。
我正在使用的数据示例
DateTime current voltage
11/1/2014 12:00 1.122061402 4.058617834
11/1/2014 1:00 1.120534925 4.060912132
11/1/2014 2:00 1.119349897 4.058656072
11/1/2014 3:00 1.118277733 4.060912132
11/1/2014 4:00 1.120365636 4.060912132
11/1/2014 5:00 1.120365636 4.060912132
我想对整个月每天上午 12 点至凌晨 3 点的第 2 列进行平均。我在想对时间使用条件语句将是一个不错的选择,但是我不确定如何在日期/时间数据上实现该条件语句。
【问题讨论】:
-
df['DateTime'].resample('3H').mean()? -
如果我实施 3H 平均值,这将为我提供每 3 小时数据的平均值。我想在整个月的凌晨 12 点至凌晨 3 点的时间段内得到这个平均值。
-
假设
DateTime是索引会这样吗?df.between_time('12:00', '3:00').resample('3H').mean()
标签: python python-3.x pandas dataframe