不同的 GLM 结果(R 与 julia)
Different GLM Result (R vs. julia)
我 运行 R 和 Julia 中的基本逻辑回归。尽管使用相同的数据,但我得到了不同的结果。我使用了以下代码:
回复:
glm(Yi ~ welfare + married + college + agestar + smokernew + wprestar,
data=glm_data, family=binomial())
R Output:
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -2.44746 1.02790 -2.381 0.0173 *
welfare -13.90825 554.61491 -0.025 0.9800
married -0.45701 0.37610 -1.215 0.2243
college -0.91454 0.54504 -1.678 0.0934 .
agestar 0.07857 0.13986 0.562 0.5743
smokernew 0.78939 0.45357 1.740 0.0818 .
wprestar -0.27257 0.11423 -2.386 0.0170 *
茱莉亚:
glm(Yi ~ welfare + married + college + agestar + smokernew + wprestar,
glm_data, Binomial(), LogitLink())
Julia Output:
Coefficients:
Estimate Std.Error z value Pr(>|z|)
(Intercept) -2.44746 1.0279 -2.38104 0.0173
welfare -9.90825 75.0597 -0.132005 0.8950
married -0.457005 0.376097 -1.21513 0.2243
college -0.914541 0.545042 -1.67793 0.0934
agestar 0.0785672 0.139856 0.561774 0.5743
smokernew 0.789386 0.453571 1.74038 0.0818
wprestar -0.27257 0.114234 -2.38605 0.0170
为什么?
除福利变量外,所有系数都相同。我检查了我的数据框,它们完全相同。
在不查看您的数据的情况下,我猜测您对 welfare
变量的响应 类 几乎完全分离。在逻辑尺度上估计 (+/-) 13 本质上是 (+/-) 无穷大,对应于零或一的估计概率。 Julia 对 -9.9 的估计基本上是相同的,只是它可能会提前一点终止迭代,因此 returns 无穷大的值略小。
这被称为 Hauck-Donner phenomenon and you can find questions about it on CrossValidated.com(statistics/ML StackExchange 站点)。
我 运行 R 和 Julia 中的基本逻辑回归。尽管使用相同的数据,但我得到了不同的结果。我使用了以下代码:
回复:
glm(Yi ~ welfare + married + college + agestar + smokernew + wprestar,
data=glm_data, family=binomial())
R Output:
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -2.44746 1.02790 -2.381 0.0173 *
welfare -13.90825 554.61491 -0.025 0.9800
married -0.45701 0.37610 -1.215 0.2243
college -0.91454 0.54504 -1.678 0.0934 .
agestar 0.07857 0.13986 0.562 0.5743
smokernew 0.78939 0.45357 1.740 0.0818 .
wprestar -0.27257 0.11423 -2.386 0.0170 *
茱莉亚:
glm(Yi ~ welfare + married + college + agestar + smokernew + wprestar,
glm_data, Binomial(), LogitLink())
Julia Output:
Coefficients:
Estimate Std.Error z value Pr(>|z|)
(Intercept) -2.44746 1.0279 -2.38104 0.0173
welfare -9.90825 75.0597 -0.132005 0.8950
married -0.457005 0.376097 -1.21513 0.2243
college -0.914541 0.545042 -1.67793 0.0934
agestar 0.0785672 0.139856 0.561774 0.5743
smokernew 0.789386 0.453571 1.74038 0.0818
wprestar -0.27257 0.114234 -2.38605 0.0170
为什么?
除福利变量外,所有系数都相同。我检查了我的数据框,它们完全相同。
在不查看您的数据的情况下,我猜测您对 welfare
变量的响应 类 几乎完全分离。在逻辑尺度上估计 (+/-) 13 本质上是 (+/-) 无穷大,对应于零或一的估计概率。 Julia 对 -9.9 的估计基本上是相同的,只是它可能会提前一点终止迭代,因此 returns 无穷大的值略小。
这被称为 Hauck-Donner phenomenon and you can find questions about it on CrossValidated.com(statistics/ML StackExchange 站点)。