R 自动检测具有多重共线性问题的项目

R 自动检测具有多重共线性问题的项目,r,statistics,R,Statistics,我有以下数据: set.seed(1) df=data.frame(y=rnorm(500,0,20),x1=rnorm(500,50,100),x2=rnorm(500,10,40)) df$x3=df$x1+runif(500,-50,50); df$x4=df$x2+runif(500,-5,5) 此数据包含多重共线性数据。如果我这样做: library(ppcor) t <- pcor(df, method = "pearson") t$estimate 库(ppcor) 重新

我有以下数据:

set.seed(1)
df=data.frame(y=rnorm(500,0,20),x1=rnorm(500,50,100),x2=rnorm(500,10,40))
df$x3=df$x1+runif(500,-50,50); df$x4=df$x2+runif(500,-5,5)
此数据包含多重共线性数据。如果我这样做:

library(ppcor)
t <- pcor(df, method = "pearson")
t$estimate
库(ppcor)

重新分级多重共线性-有许多测试可以帮助您检测多重共线性。例如,您可以使用
car
软件包中的
vif
函数计算“方差膨胀系数”

fit <- lm(y ~ x1 + x2 + x3 + x4, data = df)
vifVues <- car::vif(fit)
输出:

  row column       cor p   n
1  x1     x3 0.9626412 0 500
2  x2     x4 0.9972960 0 500
  row column       cor p   n
1  x1     x3 0.9626412 0 500
2  x2     x4 0.9972960 0 500