且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何使用pd.Grouper按月对日期进行分组?

更新时间:2023-01-30 09:11:45

原因很简单:您没有将Groupby密钥传递给groupby

您想要的是根据df['Date']内容的月值对整个数据帧进行分组。

但是,df['Date'].groupby(pd.Grouper(freq='M'))实际做的是首先从DataFrame的Date列提取一个pd.Series。然后,它尝试对Series执行GROUPBY;如果没有指定的键,它将默认尝试按索引分组,索引当然是数字的。

这将起作用:

df.groupby(pd.Grouper(key='Date', freq='M'))