【R语言 数据分析】多重共线性问题

1、什么是多重共线性?
多重共线性(Multicollinearity)是指线性回归模型中的解释变量之间由于存在精确相关关系或高度相关关系而使模型估计失真或难以估计准确。

2、多重共线性对回归模型的影响

@1、完全共线性下参数估计量不存在
@2、近似共线性下OLS估计量非有效
@3、参数估计量经济含义不合理
@4、变量的显著性检验失去意义,可能将重要的解释变量排除在模型之外
@5、模型的预测功能失效。变大的方差容易使区间预测的“区间”变大,使预测失去意义。

3、利用计算特征根发现多重共线性
4、Kappa()函数

5、多重共线性解决办法
(1)排除引起共线性的变量
找出引起多重共线性的解释变量,将它排除出去,以逐步回归法得到最广泛的应用。
(2)差分法
时间序列数据、线性模型:将原模型变换为差分模型。
(3)减小参数估计量的方差:岭回归法(Ridge Regression)。

##########################R语言分析##############################

rm(list=ls())
gc()

head(longley)

View(longley)
str(longley)
summary(longley)

################研究变量之间是否存在共线性######################
xx <- cor(longley[2:7])

#如果以GNP.deflator作为因变量y ,研究其余6个变量是否存在多重共线性
# 在R中我们通过cor和kappa函数来研究数据框中某些变量之间是否存在多重共线性,
# 基本原理是通过研究矩阵的最大特征值和最小特征值之间的比值。具体如下:
kappa(xx,exact =TRUE)

#####这个比值如果大于1000,变量之间存在严重的多重共线性################


#################计算特征值和特征向量################

####################利用计算特征根发现多重共线性#############
eigen(xx)

####可将其中一个线性相关的变量提出,解决多重线性回归##########

你可能感兴趣的:(数据科学--R语言)