我有两个数据集df1和df2,它们共有一个列“ ID”:
df1 <- data.frame(ID=c(1:20), Country=c("US"))
df2 <- data.frame(ID=c(1:10), Gender=c("Female","Male"))
如果df2中存在相同的ID并且是“女性”,如何在df1中添加另一列"Respondents"=="Yes"
?
答案 0 :(得分:1)
我们可以对第二个数据集进行联接,并通过检查“性别”是否为“女性”,然后使用case_when
将标签标记为“是”来创建“受访者”列
library(dplyr)
df1 <- df1 %>%
left_join(df2) %>%
mutate(Respondents = case_when(Gender == 'Female' ~ "Yes" )) %>%
select(-Gender)