推荐书: Python开发最佳实践

多重共线性的诊断

微博@mlln-cn, 并附上文章url链接, 我就能回答你的问题奥!

我们通常在线性回归或者多元方差分析中听过这个词, 它通常指的是当回归模型中的自变量相关太高时,它们将无法独立预测因变量的值。换句话说,他们解释了因变量中的某些相同方差,从而降低了其统计显着性。

本篇文章主要介绍了诊断多重共线性的方法以及当出现多重共线性时如何处理。

多重共线性

当两个自变量之间存在高度相关性时,其中一个变量的存在可能导致另一个变量的回归系数的显著性急剧升高,但这并不代表这个变量对因变量没有预测作用, 共线性成为回归分析中的一个问题。在回归模型中,方差膨胀因子(VIF)提供共线性度的量度,如果VIF<5, 基本不存在共线性,而VIF超过10就应该认为存在共线性[10], 如果超过20就存在极度共线性。

SPSS操作

打开”回归”对话框

结果解读

VIF超过10, 我们就认为存在共线性[1]

下面这个表格更能帮助我们找到共线性的问题出在哪几个变量了

维(Dimension)

让我们从表的第一列开始。与因子分析或PCA(主成分分析)相似但不完全相同,但是我们需要利用因子分析的”因子”的概念来理解”维”

条件指标(Condition Index)

条件指标的及算法方法是: 特征值除以第一个维度的特征值, 比如, 第三维的条件指标= (10.644/0.070)**o.5=12.33, 由于四舍五入会导致一些精确度的差异

如果条件指标超过15, 我们就可以认为出现了共线性的问题, 如果该维度上有共线性的问题, 我们需要在该行找到方差比例超过0.9的变量, 比如第十维有三个变量的方差比例超过了0.9, 他们是:名人效应/女名人效应/男名人效应, 因此我们可以考虑删掉两个变量, 只保留一个变量

再比如第11维, 我们可以看到有四个变量的方差比例超过了0.9, 因此我们需要删除三个变量, 只保留一个

删除冗余变量后的结果

删除冗余变量后, 我们可以看到已经没有共线性问题了

共线性的处理方法

  • 删除共线的变量, 只保留一个
  • 将多个贡献变量求和或者均值, 合成一个变量

参考

注意
本文由jupyter notebook转换而来, 您可以在这里下载notebook
有问题可以直接在下方留言
或者给我发邮件675495787[at]qq.com
请记住我的网址: mlln.cn 或者 jupyter.cn

赞助

持续创造有价值的内容, 我需要你的帮助