温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

R语言如何实现检验多重共线性的操作

发布时间:2021-04-02 10:05:43 来源:亿速云 阅读:1387 作者:小新 栏目:开发技术

小编给大家分享一下R语言如何实现检验多重共线性的操作,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

函数kappa()

df<-data.frame()
df_cor=cor(df)
kappa(df_cor, exact=T)

当 κ<100κ<100 , 说明共线性程度小;

当 100<κ<1000100<κ<1000 , 有较强的多重共线性;

当 κ>1000κ>1000,存在严重的多重共线性。

函数qr()

x<-matrix()
qr(x)$rank

qr(X)$rank 计算X矩阵的秩,如果不是满秩的,说明其中有xixi可以用其他xjxj的线性组合表示;此时可以进行逐步回归,用step()命令。

fm<-lm()
step(fm)

补充:多重共线性的产生原因、判别、检验、解决方法

最近做回归分析,出现了相关系数与回归方程系数符号相反的问题,经过研究,确认是多重共线性问题并探索了解决方法。

在此将多重共线性的相关知识整理如下。

解释变量理论上的高度相关与观测值高度相关没有必然关系,有可能两个解释变量理论上高度相关,但观测值未必高度相关,反之亦然。所以多重共线性本质上是数据问题。

造成多重共线性的原因有一下几种:

1、解释变量都享有共同的时间趋势;

2、一个解释变量是另一个的滞后,二者往往遵循一个趋势;

3、由于数据收集的基础不够宽,某些解释变量可能会一起变动;

4、某些解释变量间存在某种近似的线性关系;

判别:

1、发现系数估计值的符号不对;

2、某些重要的解释变量t值低,而R方不低

3、当一不太重要的解释变量被删除后,回归结果显著变化;

检验:

1、相关性分析,相关系数高于0.8,表明存在多重共线性;但相关系数低,并不能表示不存在多重共线性;

2、vif检验;

3、条件系数检验;

解决方法:

1、增加数据;

2、对模型施加某些约束条件;

3、删除一个或几个共线变量;

4、将模型适当变形;

5、主成分回归

处理多重共线性的原则:

1、 多重共线性是普遍存在的,轻微的多重共线性问题可不采取措施;

2、 严重的多重共线性问题,一般可根据经验或通过分析回归结果发现。如影响系数符号,重要的解释变量t值很低。要根据不同情况采取必要措施。

3、 如果模型仅用于预测,则只要拟合程度好,可不处理多重共线性问题,存在多重共线性的模型用于预测时,往往不影响预测结果;

看完了这篇文章,相信你对“R语言如何实现检验多重共线性的操作”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI