使用.SDcols对r中的data.table中的列值求和

时间:2017-03-01 16:31:45

标签: r data.table

DT <- data.table(A = 1:5, B = 2:6, C = 3:7)

我想使用列索引对3列进行求和:

DT[, D := do.call(sum, .SD), .SDcols = 1:3]

但上面的代码不起作用,

我也不想使用DT[, D := (A+B+C)]

1 个答案:

答案 0 :(得分:2)

您可以在rowSums上使用.SD

DT[, D := rowSums(.SD), .SDcols = 1:3][]

#   A B C  D
#1: 1 2 3  6
#2: 2 3 4  9
#3: 3 4 5 12
#4: 4 5 6 15
#5: 5 6 7 18