【发布时间】:2017-10-15 17:09:31
【问题描述】:
我正在使用 data.table 包来聚合一个列,该列也是一个分组列。但结果不是我所期望的。
my_data = data.table(contnt=c("america", "asia", "asia","europe", "europe", "europe"), num= 1:6)
#my_data
#contnt num
#america 1
#asia 2
#asia 3
#europe 4
#europe 5
#europe 6
my_data[, length(contnt),by=contnt]
#contnt V1
#america 1
#asia 1
#europe 1
当我聚合一个列而不是分组列时,它的工作方式不同
my_data[, length(num),by=contnt]
#contnt V1
#america 1
#asia 2
#europe 3
造成这种差异的原因是什么?
【问题讨论】:
-
你可能想要
my_data[, .N,by=contnt] -
谢谢迈克,这很好。但我对为什么会出现不一致很感兴趣。
标签: r data.table