我有一个这样的df
a b
1 3
2 3
3 3
4 3
1 3
2 3
3 3
4 3
我想要这样的解决方案。我想要 3 个交叉点的“a”列的移动总和,这是 b 列的值。 b 列的值可以更改。
结果
a b CumSum
1 3 1
2 3 3
3 3 6
4 3 9
1 3 8
2 3 7
3 3 6
4 3 9
下面是我使用的代码
df$cum_sum <- ave(a,
(seq_along(a)-1)%/%
b,
FUN= cumsum)
但这会重新开始第 4 次观察的累积和,这不是预期的结果。