从pd.Grouper中的结束日期向后计数

2024-04-27 23:58:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我想将每日数据汇总为每周数据(7天总和),但最后一个日期为“来源”。是否可以使用pd.Grouper从结束日期开始分组?以下是数据的外观:

enter image description here

此代码:

df.groupby(pd.Grouper(key='date', freq='7d'))['value'].sum()

结果

2020-01-01     5
2020-01-08    12
2020-01-15     4

但我希望这样:

2020-01-01 0 
2020-01-03 7
2020-01-10 14

Tags: 数据key代码dfdatevalue来源pd
1条回答
网友
1楼 · 发布于 2024-04-27 23:58:44

您使用的方法可以使用df上pandas的resample方法缩短

但我认为你的问题在于你约会的顺序

你期望的结果是更多的日产量

因此,我建议将df拆分,然后再次合并它们

df.set_index(['date'],inplace=True)
df_below = df[3:].resample('W').sum()

df_up = df.iloc[0:3,:].sum()

# or you can give dates instead of 0:3 in  iloc

行[0,1,2]可以取这些n的和,然后再次使用hstack or concat or merge使它们成为一个数据帧

请随时询问更多问题

相关问题 更多 >