所用数据集women提供了15个年龄在30~39岁间女性的身高和体重信息,想通过身高预测体重。

简单线性回归

结果数据分析:

回归系数(3.45)显著不为0(p<0.001),表明身高每增高1英寸,体重将预期增加3.45英镑。

R平方项(0.991)表明模型可以解释体重99.1%的方差,它也是实际和预测值之间相关系数的平方。


残差标准误(1.525lbs)则可认为是模型用身高预测体重的平均误差。

之后进行输出了真实值、预测值和残差值。显然残差值最大的在身高最矮和最高的地方出现,表明可以用含一个弯曲的曲线来提高预测精度。

拟合效果图:

代码运行:

> #简单线性回归
>
> womenheight weight
1      58    115
2      59    117
3      60    120
4      61    123
5      62    126
6      63    129
7      64    132
8      65    135
9      66    139
10     67    142
11     68    146
12     69    150
13     70    154
14     71    159
15     72    164> fit <- lm(weight ~ height , data = women)> fitCall:
lm(formula = weight ~ height, data = women)Coefficients:
(Intercept)       height  -87.52         3.45  > summary(fit)Call:
lm(formula = weight ~ height, data = women)Residuals:Min      1Q  Median      3Q     Max
-1.7333 -1.1333 -0.3833  0.7417  3.1167 Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) -87.51667    5.93694  -14.74 1.71e-09 ***
height        3.45000    0.09114   37.85 1.09e-14 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 1.525 on 13 degrees of freedom
Multiple R-squared:  0.991, Adjusted R-squared:  0.9903
F-statistic:  1433 on 1 and 13 DF,  p-value: 1.091e-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       10
112.5833 116.0333 119.4833 122.9333 126.3833 129.8333 133.2833 136.7333 140.1833 143.6333 11       12       13       14       15
147.0833 150.5333 153.9833 157.4333 160.8833 > residuals(fit)1           2           3           4           5           6           7           8 2.41666667  0.96666667  0.51666667  0.06666667 -0.38333333 -0.83333333 -1.28333333 -1.73333333 9          10          11          12          13          14          15
-1.18333333 -1.63333333 -1.08333333 -0.53333333  0.01666667  1.56666667  3.11666667 > plot(women$height,women$weight,
+      xlab = "Height (in inches)",
+      ylab = "Weight (in pounds)")> abline(fit)

多项式回归

二次项的显著性(t=13.89,p<0.001)表明包含二次项提高了模型的拟合度。


模型的方差解释率已经增加到了99.9%。
回归中,决定系数也可以称为方差解释率,它代表了总方差被预测变量所解释或决定的比率,决定系数越逼近1,拟合效果和解释效果越好。

拟合效果图:

> #多项式回归
>
> fit2 <- lm(weight ~ height + I(height^2) , data = women)> summary(fit2)Call:
lm(formula = weight ~ height + I(height^2), data = women)Residuals:Min       1Q   Median       3Q      Max
-0.50941 -0.29611 -0.00941  0.28615  0.59706 Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 261.87818   25.19677  10.393 2.36e-07 ***
height       -7.34832    0.77769  -9.449 6.58e-07 ***
I(height^2)   0.08306    0.00598  13.891 9.32e-09 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 0.3841 on 12 degrees of freedom
Multiple R-squared:  0.9995,    Adjusted R-squared:  0.9994
F-statistic: 1.139e+04 on 2 and 12 DF,  p-value: < 2.2e-16> plot(women$height,women$weight,
+      xlab = "Height (in inches)",
+      ylab = "Weight (in lbs)")> lines(women$height,fitted(fit2))

二元关系图

> #二元关系图
> library(car)> scatterplot(weight ~ height , data = women,
+             spread=FALSE , smoother.args=list(lty=2),pch=19,
+             main="Women Age 30-39",
+   .... [TRUNCATED]
There were 12 warnings (use warnings() to see them)

简单线性回归和多项式回归相关推荐

  1. 线性关系r范围_一个简单线性回归和多项式回归在R中的实现示例

    一个简单线性回归和多项式回归在R中的实现示例 常见线性回归的原理就不多说了,大家都懂,就是普通最小二乘法( Ordinary Least Square , OLS )回归法,主要用于简单线性回归.多项 ...

  2. [Python从零到壹] 十二.机器学习之回归分析万字总结全网首发(线性回归、多项式回归、逻辑回归)

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  3. sklearn学习笔记之简单线性回归

    简单线性回归 线性回归是数据挖掘中的基础算法之一,从某种意义上来说,在学习函数的时候已经开始接触线性回归了,只不过那时候并没有涉及到误差项.线性回归的思想其实就是解一组方程,得到回归函数,不过在出现误 ...

  4. 记录一次使用线性回归和多项式回归为房价定价

    2022年6月,笔者准备去北京海淀某地租房,看中了一个小区的房子.笔者囊中羞涩,只想租一个小一居室,大约44.5平米,但是这个小区的房子,各类大小的房子都有,偏偏44.5平米户型房子的价格没有,房东开 ...

  5. Simple Linear Regressions 简单线性回归 (R)

    本文从简单线性回归出发,终止于多项式回归.变量类型涉及连续/分类变量. 理论部分值得一看,代码部分适合用于忘了格式的时候查一查,不适合新学. 理论 用GLM表示普通线性模型 如果你不知道GLM(Gen ...

  6. 【实验练习】请建立简单线性回归模型,实现依据身高预测以为女性的体重,并对模型进行评估和优化。

    题目: 一组women的实验数据,数据内容来自The World Almanac and Book of Facts 1975,该数据集给出了年龄在30-39岁的15名女性的身高和体重数据,主要属性如 ...

  7. TensorFlow简单线性回归

    TensorFlow简单线性回归 将针对波士顿房价数据集的房间数量(RM)采用简单线性回归,目标是预测在最后一列(MEDV)给出的房价. 波士顿房价数据集可从http://lib.stat.cmu.e ...

  8. R语言使用lmPerm包应用于线性模型的置换方法(置换检验、permutation tests)、使用lm模型构建简单线性回归模型、使用lmp函数生成置换检验回归分析模型

    R语言使用lmPerm包应用于线性模型的置换方法(置换检验.permutation tests).使用lm模型构建简单线性回归模型.使用lmp函数生成置换检验回归分析模型(Permutation te ...

  9. Python Train_机器学习--基于Python的简单线性回归

    一.概念 线性回归(Linear regression)是利用称为线性回归方程的最小二乘函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析. 这种函数是一个或多个称为回归系数的模型参数的线性 ...

最新文章

  1. eeglab中文教程系列(8)-选择数据的epochs并进行比较
  2. 粤港澳大湾区菜篮子-哲商对话·林裕豪:从玉农业谋定大健康
  3. 冬至日,诚邀你来杭州网易,一起吃着饺子畅聊「B2B增长」
  4. JavaScript高级之构造函数和原型
  5. 箱梁终张拉后弹性上拱度计算_高速铁路预应力简支箱梁反拱预设分析
  6. 计算机信息学中比较大小的代码,信息学奥赛计算机基础知识.doc
  7. android无网络状态栏,Android中检查网络连接状态的变化,无网络时跳转到设置界面...
  8. 教你在SQL Server数据库中设计表和字段
  9. Python爬虫简单入门
  10. 华为海思K3平台总体特性
  11. 《那些年啊,那些事——一个程序员的奋斗史》九
  12. 详解Transformer中Self-Attention以及Multi-Head Attention
  13. js获取手机型号和系统
  14. CRT团队组员博客地址统计
  15. Advanced Installer,搜索注册表,根据注册表选择安装路径
  16. 关于人事档案都看看 给你们敲响警钟(
  17. 基于java的网上鲜花销售系统,基于JAVA的鲜花销售管理系统MVC开发,免费分享
  18. 【RPA Mobile自动化4】手机测试自动化
  19. Ubuntu开发嵌入式串口权限问题
  20. [论文总结] 育种理论与基因检测

热门文章

  1. java 向下转型运行时错误_8.5.2 向下转型与运行类型异常
  2. java数组和链表查询效率及增删效率比较
  3. 微信php功能整合,微信公众平台开发功能整合
  4. 拓嘉启远电商:为什么拼多多商品会掉资源位
  5. 养老轻资产创业的商业逻辑与投资机会
  6. 什么是堡垒机?堡垒机有什么优势?
  7. SAP上线时未清采购订单处理
  8. su 和 sudo su 的区别
  9. 【cocos2d-x从c++到js】22:使用非侵入方式扩展UI系统接口的举例
  10. 客服整理的聊天话术怎么导入到新电脑上面?