r - 如何根据 R 中另一个变量的 value 更改变量中的 value?

我正在尝试 recode 人口统计变量。如果变量 Q36 等于 Other 并且变量 Q35 等于 Yes,我希望将 Other(来自 Q36)更改为 Hispanic。如果变量 Q36 等于 Other 并且变量 Q35 等于 No,我希望将 Other(来自 Q36)更改为 Unspecified

到目前为止,这是我的代码。

data %>% 
  mutate(Q36 = case_when(Q35 == "Yes" & Q36 == "Other" ~ Q36 == "Hispanic", 
Q35 == "No" & Q36 == "Other" ~ Q36 == "Unspecified")) -> data

回答1

你很接近:

data %>% 
  mutate(Q36 = case_when(Q35 == "Yes" & Q36 == "Other" ~ "Hispanic", 
                 Q35 == "No" & Q36 == "Other" ~ "Unspecified",
                TRUE~Q36))

相似文章