我在 R 中有一个数据集,其中有一列包含 0-1 个月、8-9 个月等。我想将此列编码为带有月数的数字变量。例如,而不是 8-9 个月,只放 9。感谢您的帮助和评论。
问问题
142 次
2 回答
4
一口气
a <- c("0-1 month", "8-9 months")
as.integer(gsub("^[[:digit:]]+-([[:digit:]]+) month[s]*", "\\1", a))
于 2012-08-21T22:50:58.410 回答
2
使用包中的recode
功能car
。它不如gsub
解决方案简洁,但更灵活,可能更容易阅读:
library(car)
a <- c("0-1 month", "8-9 months")
recode(a, '"0-1 month" = 1; "8-9 months" = 2')
于 2012-08-21T23:41:09.363 回答