我希望拥有数据表的所有组的交集.所以对于给定的数据:
data.table(a=c(1,2,3, 2, 3,2), myGroup=c("x","x","x", "y", "z","z"))
Run Code Online (Sandbox Code Playgroud)
我希望得到结果:
2
Run Code Online (Sandbox Code Playgroud)
我知道
Reduce(intersect, list(c(1,2,3), c(2), c(3,2)))
Run Code Online (Sandbox Code Playgroud)
将给出我想要的结果,但我没有弄清楚如何生成data.table查询组的列表.
我会尝试Reduce以下列方式使用(假设dt您的数据)
Reduce(intersect, dt[, .(list(unique(a))), myGroup]$V1)
## [1] 2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1093 次 |
| 最近记录: |