在测试集上进行预测
现在您已经将数据随机划分为训练集和测试集,您可以像第一个练习那样使用 lm(),但这次只在训练集上拟合模型,而不是在整个数据集上。回顾一下,您可以使用线性回归函数的 formula 接口,以指定的目标变量为因变量、将数据集中的其他变量都作为自变量来拟合模型:
mod <- lm(y ~ ., training_data)
您可以使用 predict() 函数在新数据上生成该模型的预测。新数据集必须包含训练数据的所有列,但列的顺序和值可以不同。在这里,请不要在训练集上重新预测,而是在未用于训练模型的测试集上进行预测。这样,您就能在下一个练习中评估模型的样本外误差:
p <- predict(model, new_data)
本练习是课程的一部分
在 R 中使用 caret 的机器学习
练习说明
- 拟合一个名为
model的lm()模型,使用除price以外的所有变量作为协变量来预测price。请务必使用训练集train。 - 使用
predict()在测试集test上进行预测。将预测结果存入名为p的向量中。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Fit lm model on train: model
# Predict on test: p