R语言简单线性回归

在R中,拟合线性模型最基本的函数就是lm(),格式为: myfit <- lm(formula, data) 其中,formula指要拟合的模型形式,data是一个数据框,包含了用于拟合模型的数据。结果 对象(本例中是myfit)存储在一个列表中,包含了所拟合模型的大量信息。表达式(formula) 形式如下: Y ~ X1 + X2 + ... + Xk ~左边为响应变量,右边为各个预测变量,预测变量之间用+符号分隔。表8-2中的符号可以用不 同方式修改这一表达式

在R中,拟合线性模型最基本的函数就是lm(),格式为: myfit <- lm(formula, data) 其中,formula指要拟合的模型形式,data是一个数据框,包含了用于拟合模型的数据。结果 对象(本例中是myfit)存储在一个列表中,包含了所拟合模型的大量信息。表达式(formula) 形式如下: Y ~ X1 + X2 + ... + Xk ~左边为响应变量,右边为各个预测变量,预测变量之间用+符号分隔。表8-2中的符号可以用不 同方式修改这一表达式

让我们通过一个回归示例来熟悉表8-3中的函数。基础安装中的数据集women提供了15个年 龄在30~39岁间女性的身高和体重信息,我们想通过身高来预测体重,获得一个等式可以帮助我 们分辨出那些过重或过轻的个体。代码清单8-1提供了分析过程,图8-1展示了结果图形。

> fit <- lm(weight ~ height, data=women) 
> summary(fit) 
Call: 
lm(formula=weight ~ height, data=women) 
Residuals: 
 Min 1Q Median 3Q Max 
-1.733 -1.133 -0.383 0.742 3.117 
Coefficients: 
 Estimate Std. Error t value Pr(>|t|) 
(Intercept) -87.5167 5.9369 -14.7 1.7e-09 *** 
height 3.4500 0.0911 37.9 1.1e-14 *** 
--- 
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 '' 1 
Residual standard error: 1.53 on 13 degrees of freedom 
Multiple R-squared: 0.991, Adjusted R-squared: 0.99 
F-statistic: 1.43e+03 on 1 and 13 DF, p-value: 1.09e-14 
> women$weight 
 [1] 115 117 120 123 126 129 132 135 139 142 146 150 154 159 164 
> fitted(fit) 
 1 2 3 4 5 6 7 8 9 
112.58 116.03 119.48 122.93 126.38 129.83 133.28 136.73 140.18 
 10 11 12 13 14 15 
143.63 147.08 150.53 153.98 157.43 160.88 
> residuals(fit) 
 1 2 3 4 5 6 7 8 9 10 11 
 2.42 0.97 0.52 0.07 -0.38 -0.83 -1.28 -1.73 -1.18 -1.63 -1.08 
 12 13 14 15 
-0.53 0.02 1.57 3.12 
> plot(women$height,women$weight, 
 xlab="Height (in inches)", 
 ylab="Weight (in pounds)") 
> abline(fit) 

图8-1 用身高预测体重的散点图以及回归线

猜你喜欢

转载自blog.csdn.net/Mrrunsen/article/details/121886348