我希望在R中对一个有3个级别的分类变量进行线性回归。具体来说,我的数据如下:
Y = 1, X= "Type 1", A=0.5
Y = 2, X= "Type 2", A=0.3
Y =0.5,X= "Type 3", A=2
我只需要简单地执行以下操作吗?
lm(Y~ X+ A)
?我希望在R中对一个有3个级别的分类变量进行线性回归。具体来说,我的数据如下:
Y = 1, X= "Type 1", A=0.5
Y = 2, X= "Type 2", A=0.3
Y =0.5,X= "Type 3", A=2
lm(Y~ X+ A)
?dummy_train<-dummyVars(" ~ .",data=<insert_data_name>)
dummy_train<-data.frame(predict(dummy_train,newdata=<insert_the_same_data_name>))
lm(Y ~ X + A)
可以正常工作。如果X
还不是一个因子但是是一个字符串向量,lm
将把它视为因子,在模型中使用第一个值作为参考类别,并包括每个其他水平的虚拟变量。如果X
是一个因子,那就没问题了。 - ulfelder