R 中的 recode() 不会改变列

recode() in R does not alter the column

我遇到以下问题:我想重新编码数据集中的列,但以下代码不会更改数据集中的任何内容,也不会发出错误。

ESS.subset$agea.rc <- recode(ESS.subset$agea,'"<21"=1;"22-30"=2;"31-40"=3;"41-50"=4;"51-60"=5;"61-70"=6;">71"=7')

我也尝试使用 dplyr 包中的 mutate() 但无济于事。

我真的不知道为什么这样的基本命令在我的情况下不起作用,非常感谢您的帮助。

谢谢!

你需要像这样给它一个命名向量:


ESS.subset <- data.frame(
    agea.rc = c( "<21","22-30","31-40","41-50","51-60","61-70",">71")
)

ESS.subset$agea.rc <- 
    recode(ESS.subset$agea,"<21"=1,"22-30"=2,"31-40"=3,"41-50"=4,"51-60"=5,"61-70"=6,">71"=7)