使用 pd.Grouper 按月初分组的 Pandas

Vin*_*t L 2 python datetime group-by pandas pandas-groupby

我有一个带有每小时时间戳的 DataFrame:

2019-01-01 0:00:00             1
2019-01-01 1:00:00             2
2019-01-11 3:00:00             1
2019-01-21 4:00:00             2
2019-02-01 0:00:00             1
2019-03-05 1:00:00             2
2019-03-21 3:00:00             1
2019-04-08 4:00:00             2
Run Code Online (Sandbox Code Playgroud)

我正在使用 Pandas Grouper 每月对数据进行分组和求和:

monthly_data = [pd.Grouper(freq='M', label='left')].sum()
Run Code Online (Sandbox Code Playgroud)

预期输出:

2019-01-01 0:00:00             6
2019-02-01 0:00:00             1
2019-03-01 0:00:00             3
2019-04-01 0:00:00             2
Run Code Online (Sandbox Code Playgroud)

实际输出:

2018-12-31 0:00:00             6
2019-01-31 0:00:00             1
2019-02-28 0:00:00             3
2019-03-30 0:00:00             2
Run Code Online (Sandbox Code Playgroud)

如何让组的标签成为组中的第一个元素?

谢谢

And*_*den 6

使用 freq MS(月开始),而不是 M(月结束)。

请参阅文档中的 dateoffset 对象