我有一个包含79个解释变量的数据集,其中43个是因子。
一些因子变量只是通用标签 - 对于那些我打算使用虚拟变量进行数字表示的人。
因子变量的其他子集包含有序级别,例如:
BsmtQual: Evaluates the height of the basement
Ex Excellent (100+ inches)
Gd Good (90-99 inches)
TA Typical (80-89 inches)
Fa Fair (70-79 inches)
Po Poor (<70 inches
NA No Basement
我想将这样的因子变量转换为一个数值,它将保持从最低到最高等级的顺序,这意味着在操作之后我想得到类似的东西:
BsmtQual: Evaluates the height of the basement
Ex records will be replaced with: 6
Gd records will be replaced with: 5
TA records will be replaced with: 4
Fa records will be replaced with: 3
Po records will be replaced with: 2
NA records will be replaced with: 1
(请注意,如果我可以将NA替换为0 - 因为NA实际上并不是指该变量的缺失数据,而是指具有低基准分数的记录)
如何对此替换进行编码?
答案 0 :(得分:0)
req_var$ExterQual <- revalue(req_var$ExterQual, c("Ex"=5 ,"Gd"=4 , "TA"=3 , "Fa"=2 ,"Po"=1))
这里我不会考虑这些数据集中的NA。如果要将数字NA设为0,则在上面的命令中添加“NA”= 0。