R data.table" j"引用" by"变量非常不直观?

时间:2016-11-19 12:18:16

标签: r reference data.table

我只是在做data.table数据传输练习,而且有些东西确实会干扰我对逻辑的理解。 以某种方式由" by"引用的列。运算符与其他列不同?

使用过的数据表如下:

         DT
      x  y  z
   1: 2  1  2
   2: 1  3  4
   3: 2  5  6
   4: 1  7  8
   5: 2  9 10
   6: 2 11 12
   7: 1 13 14

当我输入DT [,sum(x),x]时,我希望:

   x V1
1: 2  8
2: 1  3

但我明白了:

   x V1
1: 2  2
2: 1  1

对于其他列我按照我的预期获得组合总和:

> DT[,sum(y),x]
      x V1
   1: 2 26
   2: 1 23

1 个答案:

答案 0 :(得分:0)

解决此问题的一种方法是使用不同的名称命名分组变量

setnames(DT[, sum(x), .(xN=x)], "xN", "x")[]
#   x V1
#1: 2  8
#2: 1  3