【发布时间】:2018-04-09 06:47:00
【问题描述】:
我有一个data.table dt 如下。
df <- data.frame(t1 = rep(0,5), t3 = c(12, 5, 8,9, 5), t7= c(25, 48, 7, 9, 14))
dt <- setDT(df)
dt
t1 t3 t7
1: 0 12 25
2: 0 5 48
3: 0 8 7
4: 0 9 9
5: 0 5 14
我想获得各列的累积总和。我只是在行中得到它。如何在data.table 中执行此操作。
dt[, 1:3 := cumsum(dt)]
dt
t1 t3 t7
1: 0 12 25
2: 0 17 73
3: 0 25 80
4: 0 34 89
5: 0 39 103
想要的输出如下:
dt
t1 t3 t7
1: 0 12 37
2: 0 5 53
3: 0 8 15
4: 0 9 18
5: 0 5 19
【问题讨论】:
-
setDT(df)原地转换,无需赋值
标签: r data.table cumsum