如何使用R中的多元线性模型预测未来值?



我有一个由学年、学时和学生人数组成的数据集。我一直在尝试通过学生的数量来预测未来的学时。

df <- data.frame("year = c(2018,2019,2020,2021), "student" = c(1000,1200,1350,1450), "credit" = c(4000,4300,4730,4250))
mod <- lm(credit ~ year + student, data = df)
summary(mod)

我想预测一下未来几年的学时数,比如2022年到2025年,这也考虑到了预测的学生人数。有办法做到这一点吗?

<表类>年信贷学生tbody><<tr>2018400010002019430012002020473013502021425014502022NANA2023NANA2024NANA2025NANA

您需要传递一个数据帧给predict()作为newdata参数。数据框架要求您为每个预测指定独立变量的值。如果你也想基于线性模型预测学生的数量,并将其作为输入,那么你可以先做这一步。比如:

lm.student <- lm(students ~ year, df)
pred.student <- predict(lm.student, newdata = data.frame(year=2022:2025))
mod <- lm(credit ~ year + student, data = df)
MyNewData <- data.frame (year=2022:2025, student=pred.student)
pred <- predict(mod, newdata = MyNewData)

相关内容

  • 没有找到相关文章

最新更新