我有一个数据集,其中有一个名为“教育”的专栏。教育专栏有几个名字。我想把这些名字换成数字。一旦我完成了这个操作,我就会看到dataset中的新列,它给了我NA。
以下是我的尝试:
library(plyr) #Load plyr package
edu.num <- revalue(x = bank_train$education,replace =
c("illiterate" = 0,
"basic.4y" = 4,
"basic.6y" = 6,
"basic.9y" = 9,
"high.school" = 12,
"professional.course" = 12,
"university.degree" = 16,
"unknown" = NA))
bank_train$education_numeric <- as.numeric(levels(edu.num))[edu.num]

发布于 2022-11-04 16:31:44
revalue函数不返回因子对象,而是返回字符向量。因此,levels(edu.num)返回"NULL",因为levels函数适合于各种因素。
所以您应该修改这段代码的最后一行
library(plyr)#Load plyr package
edu.num <- revalue(x = bank_train$education,replace =
c("illiterate" = 0,
"basic.4y" = 4,
"basic.6y" = 6,
"basic.9y" = 9,
"high.school" = 12,
"professional.course" = 12,
"university.degree" = 16,
"unknown" = NA))
bank_train$education_numeric <- as.numeric(edu.num)https://stackoverflow.com/questions/74319749
复制相似问题