Pandas TimerGrouper:以开头的索引

Pandas TimerGrouper: Index with beginning

我的pd.TimeGrouper("M")按月对每日数据进行分组,但不幸的是聚合日期是月底,而我希望有月初。使用 TimeGrouper 参数的 none 解决了这个问题。

输出:

2003-01-31   29853   2071
2003-02-28   26668   2651
2003-03-31   37380   2324
2003-04-30   25344   1448

预期输出:

2003-01-01   29853   2071
2003-02-01   26668   2651
2003-03-01   37380   2324
2003-04-01   25344   1448

这是使用 label='left' 的输出:

df.groupby([pd.TimeGrouper("M", label='left'), 'status']).sum()

                        TUFNWGTP  TELFS  t070101  t070102  t070103  t070104  \
TUDIARYDATE status                                                            
2002-12-31  emp     4.514715e+09   1244     8462      506     1265    19391   
            unemp   3.857707e+08    322      687       45      162     1147   
2003-01-31  emp     3.677095e+09   1015     7915      561     1300    16599   
            unemp   4.522924e+08    403     1073       34       42     1474 

您应该使用 MS(月开始):

df.groupby([pd.TimeGrouper("MS", label='left'), 'status']).sum()

请参阅文档中的 offset aliases