问题描述
让我们考虑数据
set.seed(42)
y <- sample(0:1,100,T)
df1 <- data.frame('Binary' = rnorm(100)>0.5 * 1,'Unif' = runif(100),'Exp' = rexp(100))
我想以两种方式拟合 logit 回归并计算“二进制”变量的 VIF - 通过 car::vif
和手动。
让我们拟合一个模型:
model <- glm(y~.,data = df1,family = binomial())
通过vif函数
> car::vif(model)
variable gvif
1: Binary 1.020622
2: Unif 1.017845
3: Exp 1.005069
手动
> 1/(1-summary(lm(df1$Binary~df1$Unif + df1$Exp))$r.squared)
[1] 1.021415
我的问题是 - 为什么不同?是我计算错误还是这只是估计错误?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)