小编And*_*cki的帖子

带有 groupby 和条件的 Pandas 滚动总和

我有一个数据框,其中包含具有客户分析的不同商品的销售时间序列。对于每个项目和给定的一天,我想计算:

  • 过去 2 天总销售额中我最好的客户的份额
  • 过去 2 天总销售额中我的顶级客户(来自列表)的份额

我试过这里提供的解决方案:

可以通过以下方式生成示例数据帧:

import pandas as pd
from datetime import timedelta

df_1 = pd.DataFrame()
df_2 = pd.DataFrame()
df_3 = pd.DataFrame()

# Create datetimes and data
df_1['item'] = [1, 1, 1, 2, 2, 2, 2]
df_1['date'] = pd.date_range('1/1/2018', periods=7, freq='D')
df_1['customer'] = ['a', 'b', 'c', 'a', 'b', 'b', 'c']
df_1['sales'] = [2, 4, 1, 5, 7, 2, 3]

df_2['item'] = [1, 1, 1, 2, 2, 2, 2]
df_2['date'] = …
Run Code Online (Sandbox Code Playgroud)

python group-by pandas rolling-computation

3
推荐指数
1
解决办法
2323
查看次数

标签 统计

group-by ×1

pandas ×1

python ×1

rolling-computation ×1