使用Excel和python来做回归分析

作者:PHPYuan 时间:2018-08-01 03:40:50

聊完方差分析,就不得不说回归分析。

回归分析是一种应用广泛的统计分析方法,在金融,医学等领域都已经成功应用,而且是比较简单也比较常用的算法了,是经得起考验的,结果解读也很友好。

这次我们就先以最常见的Excel表格来做回归分析,Excel表格的功能远比我们想的强大(一般的回归分析,只要是数据量不是很大,Excel完全可以搞得定,而且上手十分容易,不需要一行代码,就可以轻松搞定)

一般是利用最小二乘法来计算出回归模型的参数值。但是得到的回归方程到底有没有统计学意义,还需要对回归方程进行各种检验,主要是回归方程显著性检验,回归系数显著性检验,残差分析等。

数据集:波士顿房价数据

波士顿房价数据已被用于许多涉及回归问题的机器学习论文中,所有我们拿这个成熟的数据集来预测房价练练手!数据如下:

CRIM 城镇人均犯罪率

ZN 占地面积超过2.5万平方英尺的住宅用地比例

INDUS 城镇非零售业务地区的比例

CHAS 查尔斯河虚拟变量 (= 1 如果土地在河边;否则是0)

NOX 一氧化氮浓度(每1000万份)

RM 平均每居民房数

AGE 在1940年之前建成的所有者占用单位的比例

DIS 与五个波士顿就业中心的加权距离

RAD 辐射状公路的可达性指数

TAX 每10,000美元的全额物业税率

PTRATIO 城镇师生比例

B 1000(Bk - 0.63)^2 其中 Bk 是城镇的黑人比例

LSTAT 人口中地位较低人群的百分数

MEDV 以1000美元计算的自有住房的中位数

做回归分析前,先看下特征的相关性,如下:注:Excel内置的相关系数是pearson相关系数

好像和价格的相关性都差不多,那我们做一个回归拟合看看,Excel界面如下:

得到结果如下:

残差图

特征残差拟合图注:回归方程的显著性检验是F检验也就是方差分析,回归方程系数检验是T检验

结果说明:

1,回归统计:R Square表示拟合度,就是方程对数据的拟合程度,当然是越大越好,此时为0.74

2,方差分析:F=108.057,这个F是啥?是F统计量,回归方程的显著性检验是用的F检验,sig F=6.9468E-135 <0.05,所有这个方程是显著的,有意义的!

3,回归系数coefficient显著性,看T——Start值,看特征对于的P值,如图:特征INDUS,AGE对应的T统计量均小于1,P值大于0.05,说明这两个系数与y(price)的线性关系不显著,不应该保留在回归方程中,也可以再结合特征残差拟合图来看一下特征的有效性

看来得把这两个线性关系不显著的特征去掉之后再重新做回归!

这一次的回归方程和回归系数都有显著性,但是这个R Square=0.740545,好像和不剔除变量没什么差别,甚至还小一点,这就有点尴尬了。

整体的方程拟合度才0.74,效果不是很好。

我们用python来做一下看看

首先来筛选特征,有两种方法SelectKBest和f_regression注:f_regression 是单因素线性回归F检验,SelectKBest方法可以调用检验方法,如:卡方检验chi2,还有针对分类的方差分析的f_classif,当然也可以调用f_regression方法,还可以选择前k个分数较高的特征,去掉其他的特征。所以这个方法更强大,推荐使用这个。

结果如下:

这两种方法得到的结果一样,对应的特征的P值都小于0.05,没法去掉一些特征再注:目前python提供的有方差分析,卡方检验的方法,但是一直没有发现T检验的方法。可能是因为T检验其实也算是一种F检验的缘故吧,至于是不是因为这,我也不知道,这只是我猜的!但是用Excel做的时候即使去掉两个不显著的特征,好像对回归结果没有什么大的影响,所有在python中干脆都显著了,

数据分成训练集和测试集,通过在训练集和测试集上的得分对比来判断是否过拟合还是欠拟合,可以直接得到回归系数和截距,如下如:

从结果看,回归方程的拟合度在0.73左右,和用Excel做的差不多,没有提高,反而略微降低了。

绘制交叉验证预测图

从结果看,拟合的并不是很好。

后记:

结合Excel和python做的回归方程拟合度都是在0.74左右,效果只能是一般,看来得换一种方法来做。

我们接下来准备用K近邻回归算法来做预测。

分享到:

<< 上一篇:Java高级学习教程,免费领取,助你涨高新 (2018-08-01 03:40)

python相比于excel的优势_使用Excel和python来做回归分析相关推荐

  1. python相比于excel的优势_都在讨论Python能否取代Excel,那有没有人想到它

    最近看到一个话题,有人问Python到底能不能取代Excel,但是我觉得抛开使用场景的比较都是耍流氓,Photoshop是否有朝一日取代美图秀秀呢?手机是否有朝一日取代台式机?微信是否有朝一日取代电话 ...

  2. python相比于excel的优势_对照Excel使用Python进行数据分析,更快掌握

    Excel和Python,作为数据分析的主流工具,在从效率提升到数据商业化的整个过程中,都起到了重要作用.不管是在Excel中通过鼠标点选实现,亦或是利用Python通过代码实现,数据分析中的很多基础 ...

  3. java跟python优势_当前Java与Python相比还有哪些优势

    首先,Java语言与Python语言都是非常流行的全场景编程语言,在很多开发场景下,既可以使用Java语言,也可以采用Python语言,比如Web开发.大数据开发等等.随着近几年大数据和人工智能领域的 ...

  4. python相比于excel的优势_Python处理excel的优点

    在我们工作中往往需要处理大量的数据,因此Excel在我们工作中是一个必不可少的工具,不过,近期很多人开始用Python处理数据,那么,大家为什么开始用Python了呢?Python辅助处理excel的 ...

  5. python设置excel套打_用强大的Python处理海量的Excel,工作从未如此简单

    excel 欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以领取包括不限于Python实战演练.面试集锦.学习资料等. 前言 成堆的数据如何导入Excel进行分析? 大量的表 ...

  6. excel 宏编程_在 Excel 中使用 Python 开发宏脚本

    点击上方蓝字,每天一起学 Python,文末领送书福利 文 | varlemon 编辑 | EarlGrey 推荐 | 编程派公众号(ID:codingpy) 之前发文介绍过一个叫GridStudio ...

  7. python调用excel的宏_在 Excel 中使用 Python 开发宏脚本

    文 | varlemon 编辑 | EarlGrey 推荐 | 编程派公众号(ID:codingpy) 之前发文介绍过一个叫GridStudio的神器,可以在网页版应用中将 Python 与表格处理结 ...

  8. python处理excel表格入门_零基础使用Python读写处理Excel表格

    引 由于需要解决大批量Excel处理的事情,与其手工操作还不如写个简单的代码来处理,大致选了一下感觉还是Python最容易操作. 安装库 Python环境 首先当然是配环境,不过选Python的一个重 ...

  9. python web开发项目 源码_真零基础Python开发web

    Python开发web服务的优势是开发效率高,可能只需要java五分之一的代码量. Python搭建web服务有许多框架,本文介绍Django和bottle两个框架. Django 安装 首先,安装该 ...

最新文章

  1. vonr信令流程_SA EPS FallBack重要信令节点
  2. JAVA[Algorithm]--戴克斯特拉
  3. android gradle.properties
  4. 如果再写 for 循环,我就锤自己!
  5. 选择or不选择苹果的理由
  6. mingw64 下 java,如何安装MinGW-w64和MSYS2?
  7. 计算机2013知识,2013年全国计算机一级考试B基本知识点五
  8. Fluent NHibernate之旅
  9. 前端学习(2824):数据绑定前的代码编辑器技巧
  10. 【JavaScript】提取字符串里的分数,及计算平均分并与平均分比较输出
  11. 单片机按键使用程序 (51单片机)
  12. C ++ 指针 | 指针与函数 实际运用_8
  13. JS变量中你不知道的小埋伏
  14. Java 性能优化系列之3.1[JVM调优]
  15. 如何做到行业顶尖位置?
  16. 啦啦外卖独立版41.7全开源小程序app全套源码带vue源码
  17. 约4万个外国人名,中英对照
  18. Android查看源代码网站
  19. 上海拍照攻略,让你的朋友圈与众不同
  20. DNS云学堂 | 三分钟了解,最近大火的DOH与HTTPDNS、DOT的异同

热门文章

  1. 便捷删除QQ空间说说
  2. 2.IT-解决方案-2-FAX
  3. 一招解决 adb logcat 输出 日志 报错 read: unexpected EOF 俩种解决办法 设置缓存区 清空logcat 缓存
  4. BZOJ P4554 [Tjoi2016Heoi2016]游戏
  5. 圆桌会议分享|可视化
  6. 【程序员杂谈】国外程序员推荐:每个程序员都应该读的非编程书
  7. 2021年券商APP盘点:用户规模大幅度增长,智能炒股成为行业标配
  8. 从哲学角度看渗透之关于渗透与高智商电影
  9. 为什么聪明人都喜欢独处?你独处的能力,决定了你的人生层次
  10. java 监控 局域网_使用Java实现简单的局域网设备扫描