协助使用 lm 模型的预测函数

问题描述 投票:0回答:1

我正在尝试使用多重线性模型来预测值,并且在返回预测时遇到问题。我收到此错误消息:

Warning message: 'newdata' had 1 row but variables found have 268 rows

我创建了回归模型,结果为 logrog:

lm.all<-lm(logrog~growth$gender+growth$thick+growth$mitotic)

然后从那里创建了我的新数据框:

newdata=data.frame(mitotic=2,age=55,thick=1,gender=1)
newdata$thick<-factor(newdata$thick)
newdata$gender<-factor(newdata$gender)
transform(
新数据
,newdata$age=as.integer(newdata$age))

年龄是一个整数,厚度和性别是因素,所以我想我可能也必须在新数据集中转换它们

然后我预测如下:

predict(lm.all,newdata=newdata)

并返回如上错误。我不确定问题所在,因为所有变量的命名都与初始数据集中出现的完全相同

r regression linear-regression predict
1个回答
0
投票

我已经解决了这个问题,一位 reddit 用户发帖建议使用它作为 lm 代码:

lm.allq4<-lm(logrog~thick+age+mitotic+gender,data=growth)
这解决了问题(虽然我不明白为什么)

© www.soinside.com 2019 - 2024. All rights reserved.