我有一个df,看起来像这样:
Category Product Location Date formatted Volume
0 A TYPE_B Central 2019-04-01 13.0
1 A TYPE_B Central 2019-05-01 13.0
2 A TYPE_B Central 2019-06-01 12.0
3 A TYPE_B Central 2019-07-01 14.0
4 A TYPE_B Central 2019-08-01 14.0
5 A TYPE_B Central 2019-09-01 13.0
6 A TYPE_B Central 2019-10-01 14.0
7 A TYPE_B Central 2019-11-01 13.0
8 A TYPE_B Central 2019-12-01 13.0
9 A TYPE_B Central 2020-01-01 13.0
10 A TYPE_B Central 2020-02-01 13.0
11 A TYPE_B Central 2020-03-01 15.0
12 A TYPE_B East 2019-04-01 21.0
13 A TYPE_B East 2019-05-01 20.0
14 A TYPE_B East 2019-06-01 18.0
15 A TYPE_B East 2019-07-01 21.0
16 A TYPE_B East 2019-08-01 22.0
17 A TYPE_B East 2019-09-01 19.0
18 A TYPE_B East 2019-10-01 20.0
19 A TYPE_B East 2019-11-01 20.0
20 A TYPE_B East 2019-12-01 19.0
21 A TYPE_B East 2020-01-01 20.0
22 A TYPE_B East 2020-02-01 20.0
23 A TYPE_B East 2020-03-01 27.0
我试图计算从数据的开始(“2019-04-01”)和结束(“2020-03-01”)时间范围内每个地点的3个月滚动交易量,到目前为止,我使用以下代码:
df['Rolling_3_] = df.loc.iloc[:,4].rolling(window=4).mean()
这给了我整个数据帧的滚动3个月的平均值。但是,有人知道我如何重新开始滚动月计算,以便当它到达另一个“位置”时,如“东”吗“它将计算该位置的滚动3个月平均值,然后转到下一个位置,重新开始计算?本质上,计算整个数据集的滚动3个月,但其值适用于该位置。有没有一种方法可以让我对约会本身这样做?例如,当“2019-04-01”再次出现时,计算将重新开始
非常感谢您提前提供的任何帮助/建议
亲切问候,
您可以进行分组:
给你:
要将其放入数据帧中,由于索引不同,需要传递底层numpy数组
相关问题 更多 >
编程相关推荐