R-squared是什么意思
在回归分析中,R-squared值应该为多大?
就像经常被问到,在回归分析中,R平方应该为多大才表示回归模型是好的?我经常能够听到这类问题,在没回答这个问题之前,我会解释如
何来解释R平方值,我也会阐述为何这个数值可能是一个误导性的统计量,因为小的R平方值不代表模型就拟合的很差,相反,R平方值很大
也不代表模型就拟合的很好。
很明显,“R平方应该为多少”这个问题的答案取决于以下内容
在这个问题点上,我将帮助大家来更精确的解释这个问题,然而,恕我直言,因为我将告诉大家如果你问了这个问题,就相当于你问了一个错
误的问题,我将告诉你你应该如何来问这个问题,且如何来回答这个问题。
为何这是一个错误的问题
R平方的值应该为多少?对这个问题只有一个可能的答案,R平方必须等于基于线性模型能够解释的响应变量变异源的百分比大小,不多也不
少 当你问这个问题的时候,其实你最想知道的是回归模型能否满足你的期望目标,模型能否满足你的需求?接下来我将帮助你询问和回答正
确的问题,问题取决于对于线性回归模型你主要的目标是:
描述预测变量和响应变量之间的关系或者预测响应变量的数值
R平方和自变量及响应变量之间的关系
这个问题比较简单,如果你的主要目标是判断哪些预测变量是显著的并且预测变量在变化的时候响应变量将如何变化,那么R平方就是完全不
切题的指标了。
如果你正确的指定了回归模型,R平方并不会影响你如何判断自变量和因变量之间的关系。
假设你拟合出了自变量和因变量的关系,通过P值判断自变量是显著的,系数为2,其它所有的假设都满足要求。
这个结果说明自变量变化一个单位,与之相关的因变量就会变化2个单位,不管R平方是25%还是95%,这个解释都是正确的。
询问“R平方应该为多大”从这点上来说就是讲不通的,因为它没有起到什么作用。一个小的R平方并不会否定预测变量的显著性或者改变系数
的均值。R平方可以简单到任何一个值,它并不需要任何专门的数值用来做有效的解释。
为了相信你的解释,将改用问哪个问题呢?
R平方和预测的响应变量
如果你的主要目标是分析预测的精度,R平方就是一个要关心的参数了,预测并不是像只预测值那样简单,因为其包含了实验误差,精度越高
,误差就会越小。
因为较小的R平方表明模型中就有较大的误差,因此,R平方如果越小,就说明模型的精度越差,你不能使用R平方来决定你的预测值是否足
够精确里满足你的需求。
这就是为什么“R平方应该为多少”这个问题是不正确的。
那么该怎么来问呢?基于上面的解释,你应该这样询问:
预测区间是否足够的精确来满足我的需求?
预测区间和精度
预测区间代表在指定了设置的预测变量的设置后,一个新的观察的范围。这些区间就是平均预测误差。窄预测区间显示更精确的预测。
R-squared是什么意思的更多相关文章
- 机器学习:衡量线性回归法的指标(MSE、RMSE、MAE、R Squared)
一.MSE.RMSE.MAE 思路:测试数据集中的点,距离模型的平均距离越小,该模型越精确 # 注:使用平均距离,而不是所有测试样本的距离和,因为距离和受样本数量的影响 1)公式: MSE:均方误差 ...
- r squared
multiple r squared adjusted r squared http://web.maths.unsw.edu.au/~adelle/Garvan/Assays/GoodnessOfF ...
- 线性函数拟合R语言示例
线性函数拟合(y=a+bx) 1. R运行实例 R语言运行代码如下:绿色为要提供的数据,黄色标识信息为需要保存的. x<-c(0.10,0.11, 0.12, 0.13, 0.14, ...
- R语言︱非结构化数据处理神器——rlist包
本文作者:任坤,厦门大学王亚南经济研究院金融硕士生,研究兴趣为计算统计和金融量化交易,pipeR,learnR,rlist等项目的作者. 近年来,非关系型数据逐渐获得了更广泛的关注和使用.下面分别列举 ...
- R语言命令汇总
> qqplot(spear,fastrankweight)> qqplot(spear,fastrankweight,main="title")> qqplot ...
- R ggplot2 线性回归
摘自 http://f.dataguru.cn/thread-278300-1-1.html library(ggplot2) x=1:10y=rnorm(10)a=data.frame(x= x, ...
- r语言与dataframe
什么是DataFrame 引用 r-tutor上的定义: DataFrame 是一个表格或者类似二维数组的结构,它的各行表示一个实例,各列表示一个变量. 没错,DataFrame就是类似于Excel表 ...
- R语言学习笔记(二十四):plyr包的用法
plyr 这个包,提供了一组规范的数据结构转换形式. Input/Output list data frame array list llply() ldply() laply() data fram ...
- a note of R software write Function
Functionals “To become significantly more reliable, code must become more transparent. In particular ...
- Advanced R之构造子集
转发请声明出处:http://www.cnblogs.com/lizichao/p/4794733.html 构造子集 R构造子集的操作功能强大而且速度快.精通构造子集者可以用简洁的方式表达复杂的操作 ...
随机推荐
- 再次遇到\r\n转\r问题
帮助小伙伴做jenkins的环境搭建.以为5分钟的事情,但是发现了一个诡异的问题.总是提示SVN的url不合法“URL '%s' is not properly URI-encoded”. 由于选择了 ...
- Hash中的一些概率计算
Hash是把锋利的刀子,处理海量数据时经常用到,大家可能经常用hash,但hash的有些特点你是否想过.理解过.我们可以利用我们掌握的概率和期望的知识,来分析Hash中一些有趣的问题,比如: 平均每个 ...
- HoloLens开发手记 - Unity之Gestures手势识别
手势识别是HoloLens交互的重要输入方法之一.HoloLens提供了底层API和高层API,可以满足不同的手势定制需求.底层API能够获取手的位置和速度信息,高层API则借助手势识别器来识别预设的 ...
- HTML5 实现橡皮擦的擦除效果
声明:本文为原创文章,如需转载,请注明来源WAxes,谢谢! 最近项目刚好用到这种效果,也就是有点像刮刮卡一样,在移动设备上,把某张图片刮掉显示出另一张图片.效果图如下: DEMO请戳右:DEMO ...
- 关于hangfire的使用
hangfire 是一个分布式后台执行服务.用它可以代替ThreadPool.QueunItemWork等原生方法.当然4.5后的 task也是相当好用且功能强大.不过如果想分布式处理并且可监控的话, ...
- android之简易新闻客户端
将一个新闻信息保存到一个XML文件中,并将放在服务器下.通过手机客户端来从服务器下载该文件并解析显示. news.xml <?xml version="1.0" encodi ...
- Javascript基础系列之(六)循环语句(for循环)
如果您希望一遍又一遍地运行相同的代码,并且每次的值都不同,那么使用循环是很方便的. document.write(cars[0] + "<br>"); document ...
- java操作excel总结---poi
前不久做过Excel的导入导出功能,其主要的难点是java如何操作Excel文档.现在就来介绍一下利用Apache的poi如何操作Excel. 1.准备工作:导入Apache POI的相关jar包,P ...
- Excel如何查找名字重复的数据
来源于:http://jingyan.baidu.com/article/414eccf6091ff86b431f0aec.html Cokery今天在帮助同事整理数据的时候遇到了一个难题,就是在Ex ...
- G-nav-02
/*header: Navigation public style*/header:before, header:after ,.navigation:before, .navigation:afte ...