【发布时间】:2017-10-02 21:06:49
【问题描述】:
我正在使用 pandas,但我没有太多经验。我有以下数据框:
A
0 NaN
1 0.00
2 0.00
3 3.33
4 10.21
5 6.67
6 7.00
7 8.27
8 6.07
9 2.17
10 3.38
11 2.48
12 2.08
13 6.95
14 0.00
15 1.75
16 6.66
17 9.69
18 6.73
19 6.20
20 3.01
21 0.32
22 0.52
我需要计算前 11 行的累积和。当之前少于 11 个时,剩余的假定为 0。
B
0 NaN
1 0.00
2 0.00
3 0.00
4 3.33
5 13.54
6 20.21
7 27.20
8 35.47
9 41.54
10 43.72
11 47.09
12 49.57
13 51.65
14 58.60
15 58.60
16 57.02
17 53.48
18 56.49
19 56.22
20 54.16
21 51.10
22 49.24
我试过了:
df['B'] = df.A.cumsum().shift(-11).fillna(0)
但是,这并没有达到我想要的效果,而是旋转了累积和的结果。我怎样才能做到这一点?
【问题讨论】: