多个群体中的共同元素

时间:2017-11-19 00:55:27

标签: r dplyr grouping intersection

假设我们有一个带有分组列和值列的数据框。如,

test <- data.frame(Group = rep(c("A", "B", "C"), 3), Value = c(1, 10, 2, 4, 4, 4, 6, 6, 6))

获取所有组中出现的唯一值向量的最佳方法是什么,即所有组共有的值?

这是一种笨拙的方式(使用dplyr):

test %>% 
 group_by(Value) %>% 
 mutate(In_groups = length(unique(Group))) %>% 
 ungroup() %>% 
 filter(In_groups == length(unique(Group))) %>% 
 .$Value %>% 
 unique()

似乎应该有更好的方法来做到这一点。

0 个答案:

没有答案