【发布时间】:2022-02-04 12:39:34
【问题描述】:
我使用的数据集记录了受访者的种族。响应记录在多个变量中,并且允许受访者选择多个变量。示例:
ethnicity1 ethnicity2 ethnicity3 ethnicity4 ethnicity5 ethnicity6
1 0 0 0 0 0
0 2 0 0 0 0
0 0 3 4 0 0
每个种族都有自己的专栏。我已经使用 recode 命令对每一列进行了重新编码,以便不同的数字代表不同的种族(即,黑色为 1,白色为 2,等等)以尝试制作单个种族变量
A) 从组合的多列中创建一列
B) 拥有它以便任何报告多个列的人都被指定为“多个”。
我的预期输出如下所示:
Ethnicity
1
2
999
(我不确定是否最好用一个数值来表示多个种族以用于编码目的,或者让它是一个字符值,如“multiple”)
最初,我想这样做,但它并不像我希望的那样。
Ethnicity <- df %>% dplyr::na_if(0)
## create column for ethnicity
Ethnicity %>% unite("RaceEthnicity", ethnicity1:ethnicity5, na.rm = TRUE, remove = FALSE)
【问题讨论】:
标签: r dplyr multiple-columns