我真的需要有关如何解决问题的帮助。我有一个看起来像这样的数据集。

Name   Sex    Total
Anna   F      10
Jamie  M      2
Jamie  F      7
Mike   M      13
Sam    F      6
Sam    M      3

structure(list(Name = c("Anna", "Jamie", "Jamie", "Mike", "Sam", "Sam"),
Sex = c("F", "M", "F", "M", "F", "M"), Total = c(10L, 2L, 7L, 13L, 6L, 3L)),
.Names = c("Name", "Sex", "Total"), class = "data.frame", row.names = c(NA, -6L))


我想要做的是获取同时包含男性和女性名字的名字,因此结果看起来像..

Name   Sex  Total
Jamie  M    2
Jamie  F    7
Sam    M    3
Sam    F    6


但是我真的很困惑如何处理它。

最佳答案

假设数据存储在d中,这就是我将采用的方法:

# get a vector (set) of names that are use by both M and F
dual.names <- intersect(d$Name[d$Sex=='M'], d$Name[d$Sex=='F'])

# use set of dual names to filter data
d[d$Name %in% dual.names, ]

关于r - 从数据框中选择和分组双类别数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26432435/

10-12 14:05