【发布时间】:2012-10-23 04:11:57
【问题描述】:
我知道这可以通过其他软件包实现,但我正在尝试在 data.table 中实现(因为它似乎是最快的分组)。
library(data.table)
dt = data.table(a=c(1,2,2,3))
dt[,length(a),by=a]
结果
a V1
1: 1 1
2: 2 1
3: 3 1
而
df = data.frame(a=c(1,2,2,3))
ddply(df,.(a),summarise,V1=length(a))
生产
a V1
1 1 1
2 2 2
3 3 1
这是一个更明智的结果。只是想知道为什么 data.table 没有给出相同的结果,以及如何实现。
【问题讨论】:
标签: r data.table grouping