我试图获得前一行/年的累积总和。运行cumsum(data$fonds)
为我提供了相邻销售的总计,这对我想做的事情并不起作用。我想让我的数据如下所示:
year fond cumsum
1 1950 0 0
2 1951 1 0
3 1952 3 1
4 1953 0 4
5 1954 0 4
任何帮助都将不胜感激。
答案 0 :(得分:4)
{{1}}
答案 1 :(得分:1)
使用data.table
,我们可以使用shift
功能。默认情况下,它会提供type="lag"
library(data.table)
setDT(df1)[, Cumsum := cumsum(shift(fond, fill= 0))]