也许我的大脑今天不工作,但我无法弄清楚如何从2个字符串创建一个列表。
我目前已经
了scale_lab
[1] "Very Poor" "Poor" "Average" "Good" "Very Good"
[6] "Don't Know"
和
scale_rep
[1] "1" "2" "3" "4" "5" "9"
所以我想要做的就是将两者合并成一个列表,这样1 =非常差,2 =差等等。
答案 0 :(得分:4)
只需使用names()
进行分配:
> scale_lab <- c("Very Poor", "Poor", "Average", "Good",
+ "Very Good", "Don't Know")
> scale_rep <- c("1","2","3","4","5","9")
> names(scale_lab) <- scale_rep
> scale_lab
1 2 3 4 5 9
"Very Poor" "Poor" "Average" "Good" "Very Good" "Don't Know"
> scale_lab["9"]
9
"Don't Know"
>
答案 1 :(得分:3)
或者,您可以将其保存为因子(R等效于分类变量)
scale_rep <- factor(scale_rep, label=scale_lab)
如果您需要使用某些序数据统计数据,您可以随时返回数字:
as.numeric(scale_rep)
虽然,我会将DK重新编码为NA
scale_rep[scale_rep == 9] <- NA