如何计算不同集合的出现次数

时间:2018-02-21 14:33:15

标签: r set

示例代码:

library(data.table)
set.seed(42)
dt <- data.table(id = LETTERS[1:20],
             setvalues = replicate(20,
                sample(letters[1:4], sample(c(2,3),1))))[order(id)]

DT

id setvalues 1: A d,a,b 2: B c,d,a 3: C c,b,d 4: D b,d,c 5: E a,b,c 6: F a,c,b 7: G c,b 8: H b,c,d 9: I b,c,a 10: J a,d,b 11: K b,d,a 12: L b,c,d 13: M d,b,a 14: N b,c 15: O c,d 16: P b,d 17: Q d,c,b 18: R a,d,b 19: S a,d,c 20: T b,a

如何计算每组的出现次数(顺序并不重要)。

期望的结果类似于

setvalue counts b,c,d 6 a,b,d 4 a,c,c 3 a,c,d 2 b,c 2 c,d 1 b,d 1 a,b 1

1 个答案:

答案 0 :(得分:2)

&#39; setvalues&#39;是list的{​​{1}}。我们使用vectorlistlapply遍历sort,在paste参数中使用它,并获得&#39;计数&#39;与by

.N