我想将数据从字符重新编码为数字。这是我失败的尝试:
library(car) # needed for recode
survey1$V16a = recode(survey1$V16, "'Very important'=1; 'Fairly important'=2; 'Not very important'=3; 'Not important at all'=4; 'Can't choose'=99;", as.numeric.result=TRUE)
这是我随后收到的错误消息
重新编码错误(survey1 $ V16,“非常重要'= 1;'非常重要'= 2;'不是很重要'= 3;'根本不重要'= 4;'不能选择'= 99;“,:
<\ n>在重新编码术语中:'无法选择'= 99 message:解析时出错(text = strsplit(term,“=”)[[1]] [1]): :1:7:意外的符号 1:'不能
答案 0 :(得分:0)
没有必要为此使用额外的包,例如car
。在我看来,它也使代码的可读性降低。只需使用ifelse
。
survey1$V16a <- ifelse(survey1$V16a == "Very important", 1,
ifelse(survey1$V16a == "Fairly important", 2,
ifelse(survey1$V16a == "Not very important", 3,
.... )))))