[英]Pandas: correctly resampling data at the hourly frequency
在Python 3.6.3中,我具有以下數據df1
:
dt Val
2017-04-10 08:00:00 8.0
2017-04-10 09:00:00 2.0
2017-04-10 10:00:00 7.0
2017-04-11 08:00:00 3.0
2017-04-11 09:00:00 0.0
2017-04-11 10:00:00 5.0
2017-11-26 08:00:00 8.0
2017-11-26 09:00:00 1.0
2017-11-26 10:00:00 2.0
我正在嘗試計算這些值的每小時平均值,以便:
Hour Val
08:00:00 7.00
09:00:00 1.00
10:00:00 4.66
我的嘗試:
df2 = df1.resample('H')['Val'].mean()
返回與df1
相同的數據集。 我究竟做錯了什么?
受以上評論的啟發,我測試了以下對我有用的東西:
df.groupby(df.index.hour).Val.mean()
或者您可以將索引值'timedelta'
timedelta'dtypes
df.Val.groupby(df.index.hour.astype('timedelta64[h]')).mean()
dt
08:00:00 6.333333
09:00:00 1.000000
10:00:00 4.666667
Name: Val, dtype: float64
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.