-
萧十郎
尝试使用 pd.Grouper 和 freq = 'MS' 进行分组:df.groupby(pd.Grouper(freq='MS', key='date')).sum().reset_index()输出: date value_1 value_20 2018-07-01 50 31 2018-08-01 90 62 2018-09-01 80 33 2018-10-01 40 4而且,如果您想恢复点日期格式,可以使用以下命令:df_out = df.groupby(pd.Grouper(freq='MS', key='date')).sum().reset_index()df_out['date'] = df_out['date'].dt.strftime('%Y.%m.%d')df_out输出: date value_1 value_20 2018.07.01 50 31 2018.08.01 90 62 2018.09.01 80 33 2018.10.01 40 4
-
慕容708150
做df.date=pd.to_datetime(df.date)df.groupby(df.date+pd.offsets.MonthBegin(-1)).sum()Out[171]: value_1 value_2date 2018-07-01 50 32018-08-01 90 62018-09-01 80 32018-10-01 40 4
-
MM们
如果您将日期作为索引,则就像重新采样一样简单。df.resample('MS').sum()如果您还没有将其作为索引,则可以set_index.df.set_index('date').resample('MS').sum()两者都给你 value_1 value_2date 2018-07-01 50 32018-08-01 90 62018-09-01 80 32018-10-01 40 4