第1个回答 2023-11-10
多重共线性一般是指:如果有两个或者多个自变量高度相关(相关系数大于0.8),难以区分一个自变量对因变量的影响和作用,将自变量相关性产生的后果定义为多重共线性,一般提出多重共线性问题,研究者往往会想到回归分析。回归分析方法,回归模型等,在统计学中都占有重要地位,多数情况下,使用回归分析进行构建模型是,由于模型中解释变量之间存在高度相关关系(如相关系数大于0.8),所以导致数据模型估计失真,此时需要消除多重共线性问题,实现模型的精准估计。接下来从多重共线性的诊断,多重共线性解决办法以及举例进行说明多重共线性几个方面进行说明。
1.经验法
经验法就是通过宏观经验进行简单的判断,模型的R方比较高,但是变量不显著(回归中的t检验),或者模型结果不合理,这可能存在多重共线性,即如果R方较高,一般情况下方程整体会显著(即通过F检验),但t检验表明,没有或很少有斜率系数是显著不为0的。
2.相关系数检验法
对于模型中任意两个不同的解释变量进行相关分析,得到相关系数,如果相关系数的绝对值较大(一般大于0.8),则认为这两个变量相关性较高,但是需要知道,相关分析只能检验两个解释变量之间的相关性,对于更多(比如三个)解释变量的相关性检验并不适用。
3.VIF(方差膨胀因子法)
方差膨胀因子法又叫VIF,在线性回归中,第i个解释变量的VIF值表示为:
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/b64543a98226cffc99e1ed28ab014a90f703ea65?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/4bed2e738bd4b31c1ef7c62195d6277f9f2ff865?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/c2fdfc039245d68881c8e03eb6c27d1ed31b2465?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
4.特征根判断法
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/9922720e0cf3d7cab33c6dece01fbe096a63a966?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
第2个回答 推荐于2016-07-17
一、一般线性回归:
proc reg data=abc;
model y=x1-x4
run;
二、多重共线性的检验
1、简单相关系数检验法
proc corr data=abc;
var x1-x4;
run;
2、方差扩大因子法
proc reg data=abc;
model y=x1-x4/vif;
run;
3、直观分析法(略)
4、逐步回归检测法
这在SAS中有多重筛选解释变量的方法:forward、backword、stepwise、maxr、minr、rsquare,主要采用stepwise
proc reg data=abc;
model y=x1-x4/selection=stepwise sle=0.05 sls=0.10;
run; quit;
5、特征值和病态指数
proc reg data=abc;
model y=x1-x4/collin;
run;
三、多重共线性的补救措施
1、提出变量法(根据前面的检测剔除掉vif值大的变量……略)
2、增大样本容量(略)
3、变换模型形式
常使用变量的差分方式,一阶差分形式如下:
data abc;
set abc;
x1lag1=lag(x1);
x2lag1=lag(x2);
x3lag1=lag(x3);
x4lag1=lag(x4);
ylag1=lag(y);
if nmiss(x1lag1,x2lag1,x3lag1,x4lag1,ylag1)>0 then delete;
dx1=x1-x1lag1;
dx2=x1-x2lag1;
dx3=x1-x3lag1;
dx4=x1-x4lag1;
dy=x1-ylag1;
run;
proc reg data=abc;
model y=x1-x4;
run;quit;
4、利用非样本先验信息(即已知某些解释变量之间的等式从而可剔除掉一些解释变量,略)
5、横截面数据与时间序列数据并用
属于先验信息法的变种,首先利用横截面数据估计出部分参数代入原方程,再利用时间序列数据估计出另外的部分参数,其前提是前一部分参数在不同时间上变化很小。
6、变量变换
绝对指标转为相对指标;
名义数据转为实际数据;
小类指标合并为大类指标(主成分分析和因子分析,后面再予补充)
7、逐步回归法(参见检验部分,略)
8、岭回归
当自变量存在多重共线关系时, 均方误差将变得很大,故从均方误差的角度看, 普通最小二乘估计不是系数的好估计,减少均方误差的方法就是用岭回归估计替代最小二乘估计。但使得均方误差达到最小的k值依赖于未知参数系数和随机干扰项的方差,因此k 值的确定是岭回归分析中关键。
在实际应用中, 通常确定k值的方法有以下几种:①岭迹图法, 即对每个自变量xi, 绘制随k值的变化岭回归估计的变化曲线图。一般选择k使得各个自变量的岭迹趋于稳定;②方差膨胀因子法, 选择k使得岭回归估计的VIF<10;③控制残差平方和法, 即通过限制岭回归估计的残差平方和不能超过cQ(其中c>1为指定的常数,Q为最小二乘估计的残差平方和)来找出最大的k值。
data abc;
input x1-x3 y;
cards;
149.3 4.2 108.1 15.9
161.2 4.1 114.8 16.4
171.5 3.1 123.2 19.0
175.5 3.1 126.9 19.1
180.8 1.1 132.1 18.8
190.7 2.2 137.7 20.4
202.1 2.1 146.0 22.7
212.4 5.6 154.1 26.5
226.1 5.0 162.3 28.1
231.9 5.1 164.3 27.6
239.0 0.7 167.6 26.3
;
run;
proc reg data=abc outest=out1 graphics outvif;
model y=x1-x3/ridge=0.0 to 0.1 by 0.01 0.2 0.3 0.4;
plot/ridgeplot;
proc print;run;quit;
9、主成分回归法
proc reg data=abc outest=out2;
model y=x1-x3/pcomit=1,2 outvif;
proc print data=out2;run;quit;
10、偏最小二乘回归法
proc pls data=abc outmodel=out3 cv= one method=simpls;
model y=x1-x3;
proc print data=out3;
run; quit;
这些是SAS软件的检验方法。本回答被提问者和网友采纳