将字符串编码为R中的数字

时间:2012-08-21 22:45:00

标签: r statistics

我在R中有一个数据集,其中包含0-1个月,8-9个月等的列。我想将此列编码为具有月数的数字变量。例如,而不是8-9个月,只放9。 感谢您的帮助和评论。

2 个答案:

答案 0 :(得分:4)

一举一动

a <- c("0-1 month", "8-9 months")
as.integer(gsub("^[[:digit:]]+-([[:digit:]]+) month[s]*", "\\1", a))

答案 1 :(得分:2)

使用recode包中的car函数。它不像gsub解决方案那样简洁,但它更灵活,可能更容易阅读:

library(car)
a <- c("0-1 month", "8-9 months")
recode(a, '"0-1 month" = 1; "8-9 months" = 2')