这个问题在这里已经有了答案:
Select groups with more than one distinct value
(3 个回答)
2年前关闭。
我正在选择数据进行分析,需要选择出现在多个群体(牛群)中的个体(奶牛)。个人在我的数据集中出现多次,因为我有多次测量。
我的数据看起来像:
data <- data.frame(
cow = c("cow1", "cow1", "cow2", "cow2", "cow3"), #character variable
herd = c(1, 2, 1, 1, 1)) # factor variable
所以我想过滤 cow1,因为它出现在 herd1 和 herd2 中。所以在数据集中只出现一次或只出现在一个牛群中的奶牛应该被删除。
我试过 group_by 和 filter 函数,但似乎都不起作用。
data <- data %>%
group_by(cow, herd) %>%
filter(n() > 1) %>%
ungroup()
然而,这并没有给出所需的结果。我现在有点迷茫,所以我希望有人能帮助我解决这个问题。
最佳答案
怎么样:
library(dplyr)
data %>%
group_by(cow) %>%
filter(n_distinct(herd) > 1)
关于r - 如何选择出现在多个组中的个体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57522069/