多元多元回归的 VIF 检验

时间:2021-01-30 14:19:21

标签: r multicollinearity

我想使用 VIF 函数测试多重共线性。我有一个包含 13 个度量和 4 个预测变量的模型,创建方式如下:

M <- lm(cbind(S1, S2, S3, S4, S5, S6, S7, S8, S9, S10, S11, S12, S13) ~ x1 + x2 + x3 + x4, data = dat)
M

当我尝试在这个模型上运行 vif 函数时,它给出了一个错误。

if (names(coefficients(mod)[1]) == "(Intercept)") { : argument is of length 0
vif(M)

我也尝试过分别进行每个测量,但是在所有假设下测试 13 个模型是相当重复的,尽管 vif() 可以工作。

有没有办法让整个模型都适用? 我很抱歉没有包含一组数据来测试它。我希望它仍然传达了我的问题。

1 个答案:

答案 0 :(得分:2)

VIF 不涉及因变量——它只涉及自变量,所以如果你跑了,例如

m1 = lm(S1 ~ x1 + x2 + x3 + x4, data = dat)
vif(m1)

这应该会告诉你你需要的一切。