我应该使用预测函数来预测何时fjbjor
是 5.5,我总是收到此警告消息,我尝试了很多方法,但它总是出现,所以有人能看到我在这里做错了什么吗
这是我的代码
fit.lm <- lm(fjbjor~amagn, data=bjor)
summary(fit.lm)
new.bjor<- data.frame(fjbjor=5.5)
predict(fit.lm,new.bjor)
结果出来了
1 2 3 4 5 6 7 8 9 10 11
5.981287 2.864521 9.988559 5.758661 4.645530 2.419269 4.645530 5.313409 6.871792 3.309773 4.200278
12 13 14 15 16
3.755026 5.981287 5.536035 1.974016 3.755026
警告消息:“newdata”有 1 行,但找到的变量有 16 行
如果有人能看到出了什么问题,我将非常感谢您的帮助。
你的型号是fjbjor ~ amagn
, where fjbjor
是响应和amagn
是协变量。那么你的newdata
is data.frame(fjbjor=5.5)
.
newdata
应该用于提供协变量而不是响应。predict
将只保留协变量的列newdata
。对于您指定的newdata
, 这会是NULL
。因此,predict
将使用内部模型框架进行预测,这会返回拟合值。
警告信息相当明确。predict
确定预期的预测数量nrow(newdata)
,即 1。但是随后发生了我上面描述的情况,因此返回了 16 个拟合值。这种不匹配会产生警告。
看起来您真正想要的模型是:amagn ~ fjbjor
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)