如果变量间不存在多重共线性,则变量系数组成的矩阵应该是满秩的,且变量间不存在共线性不代表变量间不存在非线性关系
产生变量相关性的原因有很多,一般为经济变量之间的相同变化趋势,模型中包含滞后变量和截面数据等等
1.1多重共线性的检验
&计算相关系数,因为相关系数是对线性相关的度量
&对于线性回归来说,删除或者增加变量系数是不是有较大变化
&系数的正负号是否与现实相违背
&系数通不过显著性检验
&变量之间做回归,计算可决系数和VIF=1/(1-可决系数)来度量,也称为方差扩大因子法
1.2多重共线性的影响后果
&共线性使最小二乘法预估的参数不确定且估计值方差较大,方差较大又会导致参数的置信区间增大
&回归显著但是回归系数通不过检验,甚至会出现回归系数的正负号的不到合理的解释
但是如果遇到必须使用这些变量度量且为了预测Y,则可以对这些变量进行线性组合
1.3多重共线性的处理方法
&删除变量--这个方法一般不推荐使用,因为删除变量会导致异方差增大,异方差后面会讲到
&增加样本容量--这个好像现实中也不是很好实现,毕竟能用的数据肯定都会用的,时效性不强的也没太大用
&变换模型--对数据求差分;计算相对指标;吧相关变量做线性组合,即小类合并成大类;----比较靠谱的做法
&逐步回归----常用方法,添加删除变量之后做可决系数、F检验和T检验来确定是否增加或者剔除变量,若果增加变量对这些指标的影响较小,也认为指标为多余的,如果增加指标引起R和F的变动且通不过T检验,说明存在共线性---常常使用的方法
&岭回归---但是岭回归的参数k不好选择,k的选择严重影响方差和偏倚程度
什么是异方差呢,我们前面写线性回归的时候说过,做线性回归应假定随机扰动项满足l平均值和同方差,同方差表示的是所有变量对其均值的分散程度相同,由于u=0,所以也可以说是Y围绕回归线均值的分散程度,但是如果u对不同x呈现的离散程度不同,则称u具有异方差性,也就是被解释变量的观测值分散程度随着解释变量的变化而 变化,也可以说异方差是某个解释变量引起的
2.1产生异方差的原因
模型的设定(例如多重共线性变量的删除,但是变量与y具有相关性,也会产生异方差)
测量误差和截面数据的影响
2.3异方差的影响
&存在异方差将不能保证最小二乘法估计的方差最小,但是模型的拟合依然是无偏性和一致性,但不具有有效性,即不具有最小方差
&异方差会导致参数的方差增大,如果还是使用不存在异方差时的方法进行估计,则会低估参数方差
&破坏t检验和f检验的有效性
&由于参数估计不满足方差最小,所以不是有效的,则对Y的预测也是无效的
2.4异方差的检验
&相关图检验---观察随着x的增加y的离散程度是否增加,如果增加说明存在递增的异方差
&残差图分析
&White检验
基本思想是如果存在异方差,x与u存在相关关系,所以white检验不但可以检验异方差,还可以检验时哪个变量导致的异方差,但该方法要求大样本,但是解释变量过多又会导致丧失自由度,所以一般用u与预测值y和y的平方做回归,用F检验检验是否存在异方差,H0所有系数为0不存在异方差,否则存在异方差
2.5异方差的处理
&加权最小二乘法
方差越小,样本偏离均值的程度越小,越重视,权重越大,否则越小,一般权重使用1/x,1/x2,1/根号x
&模型对数变换,log之后缩小了异方差的范围
自相关即u存在自相关,即cov(u)不等于0,不满足线性回归的假定
3.1自相关产生的原因
经济活动滞后和经济系统的惯性
3.2自相关的后果
&存在自相关将不能保证最小二乘法估计的方差最小,但是模型的拟合依然是无偏性和一致性,但不具有有效性,即不具有最小方差,所以估计的参数不是最佳线性无偏估计
&低估真实的方差会导致高估t检验的值,夸大参数显著性,本来不重要的变量会变为重要的变量,失去t检验的意义
&方差的变大导致预测变量的区间增加,降低了预测的精度
3.3自相关的检验
&残差图---et与e(t-1)的相关图
&DW检验
但是DW检验的前提条件较多,首先需要u为一阶自回归,而且回归必须存在常数项
3.4自相关的处理
&差分法
&科克伦--奥克特迭代
基本思想是对变量回归,求残差u,u=相关系数*u(t-1)+随机扰动项
然后根据计算出来的相关系数做差分,yt-相关系数*y(t-1)=yt*
用yt*和xt*做回归
然后令最终计算的参数=上一步计算的参数/(1-上一步的相关系数)
迭代直到两次相关系数相差很小时作为最佳的相关系数
正文共: 4314字 54图预计阅读时间: 11分钟
嘿喽,我是则已。这是stata的第五期学习。
前面学习了聚类分析、ols回归分析。今天来学习:回归检验。学到这里,恭喜你,你已经对最基本回归分析整个流程都走了一遍。接下来涉及的非线性回归,Logit回归,因变量受限回归,时间序列分析,面板数据分析都与最基本的回归方法有一些联系。
划线部分是自己要研究的变量。
回归检验
前面我们学习了最小二乘回归,这种回归方法简单并且满足我们大部分的研究需要,但是能进行这种回归的前提是有条件的:变量无异方差,变量无自相关,变量无多重共线性。 所以在进行回归之后我们要检验一下数据是否存在这样的问题,如果存在了,我们要进行处理之后再进行一次最小二乘回归分析。本回归检验包含三部分:异方差检验与应对、自相关检验与应对、多重共线性检验与应对。 01 异方差检验与应对 能进行回归分析的一个基本假设:因变量的方差不随自身预测值和其他自变量的值变化而改变。但是如果在回归时不满足这个假设条件,就会出现异方差的情况。常用来判断是否出现异方差的检验办法有:绘制残差序列图、怀特检验、BP检验 解决出现异方差的的方法有:使用标准差进行回归、使用加权最小二乘回归分析方法进行回归。 首先对数据进行描述性分析,看看数据特征: summarize V1 V2 V3 V4 V5,detail
结果分析:描述性分析可以进行简单的数字分析,也可以进行比较仔细地数字分析,这里进行的是比较详细的分析,故加了detail。进行描述性分析是为了看看样本中是否存在极端的数据,看看极大值、极小值,还有数据之间是不是差距过大。 数据整体不错,进行下一步相关性分析:correlate V1 V2 V3 V4 V5
结果分析:大家可以发现在回归前数据必定会进行描述性分析和相关性分析,进行相关性分析是为了看看变量之间有没有关系。可以看出它们的关系还是可以接受的。 进行回归分析:regress V1 V2 V3 V4 V5
结果分析:F值为437.69,P值为0可以看出模型是非常显著的。R-squared超过了92%说明模型解释能力近乎完美的。但是V5的P值是0.518,比较不显著的。由下表Coef、cons可以得到该模型的方程式: V1=0.7203941V2+0.4363412V3+0.426517V4-0.2198884V5+0.3897354 获取方差和协方差矩阵:vce
结果分析:自变量方差和协方差都不大。 检验各个变量系数的显著性:test V2 V3 V4 V5
结果分析:发现自变量联合系数检验是非常显著的。通过了假设检验。 预测因变量的拟合值和残差: predict yhat predict e,resid
以上回归步骤操作完毕,下面我们来进行检验是否存在异方差,绘制残差与因变量的散点图:rvfplot
图形分析:Fitted values指回归得到的拟合值,Residuals指残差。可以看出,残差随着拟合值的不同而不同,尤其是在4-8,变动那是相当剧烈。,同一个拟合值对应非常多残差。所以存在一定异方差。 再来看看残差与自变量的散点图: rvpplot V2
结果分析:还是可以看到残差在0-4的波动还是比较剧烈的。数据还是存在一定的异方差。 绘制残差序列图只是比较粗略的看到是否存在异方差,为了精确测量,应该使用怀特检验:estat imtest,white
结果分析:怀特检验的原假设:数据是同方差,不存在异方差。我们观察P值为0是非常显著地拒绝了原假设,P值越小越拒绝,所以我们认为数据存在严重的异方差的。 下面我们用BP检验:estat hettest,iid
BP检验有很多方法,上面用的是得克尼克值来检验的。 也可以用方程右边的解释变量来解释异方差:estat hettest,rhs iid
也可以指定变量来进行BP检验:estat hettest V2,rhs iid
结果解释:BP检验的原假设也是:数据是同方差,不存在异方差。 既然我们已经发现了数据存在异方差,我们必须重新回归一次。 使用稳健性标准差对数据进行回归:regress V1 V2 V3 V4 V5,robust
结果分析:可以看出模型的F值是175.79,P值是0,模型也是非常显著的。R值也是超过92%,说明模型的解释力度很强。同时也可以得到模型的方程式,特别是V5的P值减,显著性得到一定的提高。可见我们利用稳健性标准差进行回归取得了一定的效果。 试试另外一种:使用加权平均数最小二乘回归分析来解决数据的异方差性:reg V1-V5
先删除第一回归分析预测的残差e,并重新进行预测e,然后进行平方变换: drop e predict e,resid gen ee=e^2 在残差进行平方变换的基础上再进行取对数: gen lnee=ln(ee) 再进行一次回归:reg lnee V2,nocon
删除掉第一次回归预测的拟合值,并重新预测拟合值: drop yhat predict yhat 对预测的拟合值进行指数变换:gen yhatthat=exp(yhat)
最后进行加权最小二乘回归分析:reg V1 V2 V3 V4 V5[aw=1/yhatthat]
结果分析:模型的F值,P值及R方值都得到了很大程度的提高。这就是我们使用加权最小二乘回归分析得到模型的改善效果。
02 自相关检验与应对 自相关性指随机误差项的各期望值之间存在相关关系,引起自相关性的原因有很多:经济变量惯性作用、经济行为的滞后性等。自相关性会使T检验不再显著,模型的预测功能失效。判断存在方法:绘制残差序列图,BG检验,Box-Pierce检验,DW检验。 解决自相关的方法:自相关异方差稳健的标准差进行回归、使用广义最小二乘回归分析方法进行回归。
跟上面一样,先进行描述性分析,相关性分析,回归分析,获取方差和协方差矩阵,检各个变量系数显著性,预测模型拟合值和残差。
由于自相关性往往出现在时间序列数据,故对这类数据进行分析还需要添加一些额外步骤: 首先对时间序列数据进行定义: tsset month
结果分析:把整个数据的变量定义为以月为周期的时间序列数据。 绘制残差滞后一期的散点图:scatter e l.e
结果分析:l.e指残差数据滞后一期,如要残差数据滞后两期则是l2.e。可以看到数据之间存在正相关的关系,即它y轴随着纵轴的数据变大。 如要更精致的图,我们可以绘制残差的自相关图,探索一下它的自相关阶数: ac e
结果分析:横轴表示滞后的阶数lag,阴影部分表示95%的自相关置信区间。阴影部分之外,表示自相关系数显著不为0。例如:从左往右第一条竖线的在阴影之外表示一阶自相关系数显著不为零。所以说数据主要存在一阶自相关。 我们也可以绘制一下偏自相关图:pac e
结果分析:从这个偏自相关图,同样可以看出这个一阶自相关。 还可以用BG检验自相关性:estat bgodfre
结果分析:BG检验的原假设是:数据没有自相关性。可以看到P值远远小于0.05,所以显著拒绝了原假设。即数据存在自相关。 还可以用BPQ假设检验自相关:wntestq e
结果分析:BPQ检验的原假设也是:数据不存在自相关。可以看出是显著拒绝了原假设的。 还可以用DW检验:estat dwatson
结果分析:DW检验的原假设是数据没有自相关的值正好等于2。我们的数据是0.35,所以远远小于2,存在正自相关。 既然已经知道了存在自相关性,我们要设法改进模型。 异方差稳健的标准差对数据进行重新回归分析,首先确定异方差稳健的标准差进行回归之后的阶数:di 49^0.25
结果分析:这个阶数是样本个数的0.25次幂,所以确定了阶数是3。 再进行异方差自相关稳健性的标准差分析:newey profit asset,lag(3)
结果分析:利用确定因变量profit,自变量asset,阶数3来进行分析。我们可以看到模型是非常显著的。 可以使用广义的最小二乘回归分析方法来解决数据的异方差,corc估计法: prais profit asset,corc
结果分析:怎么看还是和前面一样。特别的,我们看到最后那两行,发现DW的值由0.35变化到了1.92,基本上接近了2。所以模型消除了自相关。 广义的最小二乘估计法去解决异方差问题,还有pw估计法: prais profit asset,nolog
结果分析:同样的,pw估计方也是DW检验值接近2,基本上消除了自相关性。
03 多重共线性检验与应对 多重共线性指如果某自变量能够被其他自变量通过线性组合得到,则存在严重的多重共线性。若一个自变量能被其他自变量解释,则存在相近的多重共线性。多重共线性会导致系数估计不准确,使部分系数的显著性很弱。 解决多重共线性的方法有两种:剔除不显著的变量、进行因子分析提取相关性较弱的几个主因子
跟上面一样,先进行描述性分析,相关性分析,回归分析。
结果分析:注意我们回归全是自变量,看到回归分析后的结果,这些自变量的系数P值都大于0.05,说明系数存在不显著的问题,判断数据可能存在多重共线性。 进行多重共线性检验:estat vif
结果分析:vif指方差膨胀因子,方差膨胀因子和合理值是10以内,可看出我们的结果是41.77, 所以存在较高的多重共线性。 剔除较高的V5,重新进行回归:regress V2 V3 V4 V6
再进行多重共线性检验:estat vif
结果分析:可以发现V6方差因子值较大。但是整体的方差值降到10.85,得到很大的改善。 再剔除V6,回归并检验: regress V2 V3 V4 estat vif
结果分析:可以看出膨胀因子变成1,多重共线性得到很大改善。不过看到V4的回归系数显著性不是很好。 试试删除V4再进行回归检验: regress V2 V3 estat vif
结果分析:模型的解释能力R方值、模型的显著性都近乎完美。所以V3是最能解释V1的变量。 还可以用因子分析来检验模型的多重共线性:factor V3 V4 V5 V6,pcf
结果分析:可以看出只保留了一个主成因子,这个因子特征值和解释力度都很大。 提取公因子变量:predict f1
回归分析:reg V2 f1
vif检验:vif
结果分析:可以看出多重共线性没了。模型中各个系数的值也是非常显著的。
今天学习了回归检验,它是在对回归之后的模型进行检验的方法。主要涉及异方差检验,自相关性检验,多重共线性检验。一旦数据出现这些问题:前两个问题可以通过绘制图形大致了解是否存在,后一个问题只要在回归之后分析各自变量的系数的P值来判断是否显著从而判断出数据是否存在。解决它们的方法多种多样,根据自己的需要选择适当方法。好啦,今天的学习到这里!如果有什么不懂,或者需要软件和教学资源请到后台联系我。
- End -
“如果喜欢这期内容 那么请关注我吧”
r 语言dw检验诊断序列的自相关性
好的铁观音一般多少钱一斤
精选推荐
广告
R语言使用lm函数构建线性回归模型、使用lrtest包的dwtest函数执行残差自相关检验Durbin–Watson检验(Autocorrelation Durbin–Watson Test)
487阅读·0评论·0点赞
2022年7月11日
自相关性的诊断以及修正方法r语言代码
2.3W阅读·14评论·21点赞
2015年10月13日
R语言:相关性分析检验
964阅读·1评论·0点赞
2022年10月3日
违背基本假设的几种情况——自相关性(R语言)
4398阅读·0评论·8点赞
2019年1月20日
r语言确定最优滞后阶数_计量经济学与R语言(四)自相关
3061阅读·0评论·0点赞
2020年12月8日
r语言 相关性作图_R语言学习指南(6) 初探相关性热图
7649阅读·0评论·3点赞
2020年12月24日
高清播放机,图片大全,点击查看详情!
精选推荐
广告
r语言实现自相关分析和偏相关分析
1.4W阅读·0评论·6点赞
2020年8月6日
R语言--数据挖掘7--预测性建模:线性回归
3830阅读·0评论·4点赞
2021年5月10日
异方差与R语言实践
1.1W阅读·8评论·10点赞
2020年3月23日
R语言与回归分析几个假设的检验
3.9W阅读·3评论·12点赞
2012年11月10日
r语言相关性分析_R语言 相关性分析与检验
4473阅读·0评论·4点赞
2020年12月8日
R语言使用lm函数构建线性回归模型、使用lrtest包的dwtest函数执行残差自相关检验Durbin–Watson检验、使用acf函数执行自相关的可视化检验
401阅读·0评论·0点赞
2022年9月12日
DW(德宾-沃森)统计量临界值表
12.7W阅读·2评论·5点赞
2015年12月9日
学习R过程中的一些小总结
257阅读·0评论·0点赞
2020年3月22日
【零基础Eviews实例】02自相关(序列相关)的检验与修正
4.7W阅读·10评论·49点赞
2020年12月4日
R语言之违背基本假设的几种情况xt4.13
5549阅读·3评论·24点赞
2020年11月2日
检验杜宾 瓦森检验法R语言_回归分析 | R语言回归算法、模型诊断
1527阅读·0评论·1点赞
2020年12月23日
R语言使用lm函数构建线性回归模型、使用lrtest包的dwtest函数执行残差自相关检验Durbin–Watson检验、设置alternative参数为two.sided执行双边检验是否存在负自相关
28阅读·0评论·0点赞
2022年8月24日
moran指数 r语言_使用R进行空间自相关检验
3592阅读·0评论·4点赞
2020年12月21日
R语言使用lm函数构建线性回归模型、使用car包中的oulierTest函数识别样本数据中可能的离群值( identify possible outliers)
319阅读·0评论·0点赞
2022年7月11日
去首页
看看更多热门内容
安装:R语言和它的UI界面非常安装比较简单,这里就不重复描述了,只需要到R的上,对应自己电脑的操作系统对应的版本即可。R提供window、linux和MAC OS X版本,对应即可,如笔者的是普通的window 32位。百度R,左上角的download,选择合适的镜像。如果找不到安装,那就不适合继续学习R语言了。安装好之后,我们打开R界面,可以看到,R的界面非常简洁,只有一个菜单栏,和一个默认新建的R Console 控制台。
R Console 控制台的使用:我们可以在R Console 控制台内输入脚本进行运算、绘图和分析、如我们输入运算:1+2,按回车键。可以看到系统在下一行内弹出了一个3,有点类似于cmd的操作。
我们也可以对编辑脚本,打开文件--新建--new script,可以在弹出的R编辑器--R Editor中进行编辑录入脚本的操作,编辑完毕可以进行保存和读入等一系列操作
从上面的界面和操作可以看出,单单使用R自带的gui界面,难以进行方便快捷的操作,因此我们需要使用到R的辅助UIRStudio。同样地我们安装好并打开它。我们看到RStudio界面比R自身内容丰富很多,整个界面切成多个模块进行同步操作显示,脚本区、控制台区、文件区非常清晰易用。
同样的,我们操作1+2、1+3的运算,可以在脚本区编辑录入1+2,回车下一行继续录入1+3,这时我们看到编辑区有两行代码,证明这个区域与运行区是分离的,可以方便我们自由地编写修改脚本。
如果我们需要运行刚才编辑的两行脚本,我们可以选中它,按Ctrl+回车即可进行运行,选中1行则执行一行,选中全部则执行全部。这里操作运算了3次,对应不同的运算结果显示在了编辑区下方的控制台Console 区域。同样地,我们可以对这类脚本进行保存、打开重编辑、运行等一系列操作