首页 > 解决方案 > R中的二阶多项式和线性预测

问题描述

我有一个包含五个变量(1 个独立变量和 4 个依赖变量)的数据集。我想用二阶多项式和所有交叉项估计一个线性模型,然后计算 R 平方并计算测试样本的 MSE。

健身很容易

fit2 <- lm(num_carriers~.^2, data = trainSlim)

有没有类似于 .^2 的东西可以用于预测函数。也许像

pred2 <- predict(fit2, testSlim.^2

标签: r

解决方案


如果我正确理解您的问题,您可以使用poly. 这是它的设计目的:

返回或计算 1 次正交多项式到指定点 x 上的次数:这些都与 0 次常数多项式正交。或者,计算原始多项式。

qf <- lm(mpg ~ poly(hp,2, raw=TRUE), data = mtcars)
qf
predict(qf, newdata = mtcars)

您可以检查这是否提供与手动指定多项式相同的输出:

qf2 <- lm(mpg ~ hp + I(hp^2), data = mtcars)
qf2

指定raw=TRUE禁用正交多项式(即简单地使用xand x^2)是很重要的


推荐阅读