我真的需要帮助解决问题.我有一个看起来像这样的数据集..
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))
Run Code Online (Sandbox Code Playgroud)
我想要做的是得到男性和女性名字的名字,所以结果看起来像......
Name Sex Total
Jamie M 2
Jamie F 7
Sam M 3
Sam F 6
Run Code Online (Sandbox Code Playgroud)
但我真的很难理解如何接近它.
假设数据存储在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, ]
Run Code Online (Sandbox Code Playgroud)