我每月使用glm来计算信用数据库付款行为的二项式模型,使用如下调用:
modelx = glm(paid ~ ., data = credit_db, family = binomial())
上个月,我使用R版本3.2.2(刚刚升级),结果与上个月非常不同(使用R版本3.2.0完成)。为了检查代码,我使用版本3.2.2重复了上个月的计算,得到了与之前在R 3.2.0中完成的计算不同的结果。
系数也是非常不同的,是野生形式。我在一开始就使用一个探索性模型,其中一个变量是月内的平均拖欠天数,应该会产生低平均值的低系数。在版本3.2.0中,summary(modelx)
的摘录是:
## Coefficients: Estimate Std. Error z value
## delinquency_avg_days1 -0.59329 0.18581 -3.193
## delinquency_avg_days2 -1.32286 0.19830 -6.671
## delinquency_avg_days3 -1.47359 0.21986 -6.702
## delinquency_avg_days4 -1.64158 0.21653 -7.581
## delinquency_avg_days5 -2.56311 0.25234 -10.158
## delinquency_avg_days6 -2.59042 0.25886 -10.007
和版本3.2.2
## Coefficients Estimate Std. Error z value
## delinquency_avg_days.L -1.320e+01 1.083e+03 -0.012
## delinquency_avg_days.Q -1.140e+00 1.169e+03 -0.001
## delinquency_avg_days.C 3.439e+00 1.118e+03 0.003
## delinquency_avg_days^4 8.454e+00 1.020e+03 0.008
## delinquency_avg_days^5 3.733e+00 9.362e+02 0.004
## delinquency_avg_days^6 -4.988e+00 9.348e+02 -0.005
摘要输出略有不同,因为显示了Pr(>|z|)
。另请注意,系数名称也发生了变化。
在数据集中,此delinquency_avg_days变量具有以下分布(0为"未支付",1为"已支付",如您所见,系数可能在平均天数较大大约20个左右。已付款的数量经过抽样,以便与“未付款”#34;的数量非常接近。
0 1
0 140 663
1 59 209
2 62 118
3 56 87
4 66 50
5 69 41
6 64 40
7 78 30
8 75 31
9 70 29
10 77 23
11 69 18
12 79 17
13 61 13
14 53 5
15 67 18
16 50 10
17 40 9
18 39 8
19 23 9
20 24 2
21 36 9
22 35 1
23 17 0
24 11 0
25 11 0
26 7 1
27 3 0
28 0 0
29 0 1
30 1 0
在前几个月,我使用这个探索模型来创建第二个二项式模型,使用范围平均拖欠天数。但是这个其他模型在几个层次上给出了类似的结果。
现在,我想知道是否需要指定其他参数的实质性更改,或者版本3.2.2中的glm存在问题。