欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

R语言实战笔记 多项式回归

程序员文章站 2022-07-14 20:45:27
...

多项式回归

数据准备:
Women数据集(系统自带):15个年龄在30~39岁间女性的身高和体重信息

目的:
通过身高预测体重,获得等式来判断过轻或者过重个体。使用多项式回归,新增加一个自变量的平方项Height²,比简单线性回归更为准确。

> fit2 <- lm(weight ~ height + I(height^2), data=women)
> summary(fit2)

R语言实战笔记 多项式回归
新的预测等式为:
预测的weight = 261.88 - 7.35 * Height + 0.083 * Height²

方差解释率达到了99.95%。

> plot(women$height,women$weight,xlab="Height (in inches)",ylab="Weight (in lbs)")
> lines(women$height,fitted(fit2))

R语言实战笔记 多项式回归
(离散点为原始数据,曲线为拟合曲线)绘图发现二项式曲线确实比线性拟合得更好。

一般来说,n次多项式生成一个n-1个弯曲的曲线,三次多项式可写为:

> fit3 <- lm(weight ~ height + I(height^2) +I(height^3), data=women)

虽然更高次的多项式也可用,但是使用比三次更高的项基本上没必要。
使用car 包中的 scatterplot() 函数,可以很容易、方便地绘制
二元关系图(需要再另行了解)。
R语言实战笔记 多项式回归