从字符串创建列表

时间:2010-10-04 01:41:29

标签: list r automation character

也许我的大脑今天不工作,但我无法弄清楚如何从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 =差等等。

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