【发布时间】:2021-03-11 16:48:29
【问题描述】:
我有以下数据框:
print(df)
dt_op_f ID_FAR cod_id quantity sales_next_days
2019-01-12 10 1234 10 30 = 10+15+5
2019-01-13 10 1234 15 20 = 15+5
2019-01-13 3 1234 5 10 = 5+5
2019-01-14 10 112 5 5
2019-01-14 3 1234 5 5
2019-01-15 10 1234 5 5
对于企业 ID(“ID_FAR”)和产品 ID(“cod_id”)的每个组合,我想计算接下来 n 天的销售额(“数量”)总和(n 等于 7 );
我试过了:
df.set_index('dt_op_f').groupby(['cod_id', "ID_FAR"]).rolling('7d', min_periods=1).quantity.sum()
但它只适用于“过去”的 n 天。
我怎样才能做到这一点?
【问题讨论】:
-
您可以
shift7 天后的结果并将其与您的数据框结合起来。见geeksforgeeks.org/python-pandas-dataframe-shift -
谢谢;你能把这个想法翻译成代码吗?
标签: python-3.x pandas