我的数据如下:
Date Value
2011-01-01 09:00 1
2011-01-01 10:00 2
2011-02-18 09:00 3
...
2017-01-28 07:00 4
我需要的是多年来每个月(1月、2月等(的平均值,所以输出应该是:
Month Avg
January ...
February ...
...
我做了什么df.resample("M").mean()
,哪种有效,但不是多年来的,这是特定年份每个月的平均值:
Month Avg
January 2011 ...
February 2011 ...
...
January 2017 ...
这不是我想要的。我尝试使用groupby
,但没有成功。你知道我该怎么解决这个问题吗?
尝试:
df.groupby(df.Date.dt.month).Value.mean()
然后,您可以使用calendar
将月份编号转换为名称
import calendar
df.index = df.index.map(lambda x: calendar.month_name[x])