混合模型lme4中的警告消息

时间:2012-02-15 18:55:37

标签: r lme4

使用软件包lme4安装'glmer'模型时,以下警告消息的含义是什么?

Warning messages:
1: glm.fit: fitted probabilities numerically 0 or 1 occurred 
2: In mer_finalize(ans) : false convergence (8)

我想要的模型是这样的:

glmer(dummy ~ constituency.coa + I(governat.part) + I(district2) + gdp.cap + lula.power + ifdm + bf.cap + year + (1 | munname), data=pool, family=binomial(link = "logit"), REML=T, verbose=T)

由于

2 个答案:

答案 0 :(得分:6)

警告1:对于一个或多个观察,拟合值变为0或1,但在逻辑回归下这不可能。原因很多;在?glm的帮助页面上讨论了一个,但这只是指向其他文档的指针。这只是一个警告,所以可能不是一个问题,但它是一个警告,有些东西不合适。

警告2:我不知道确切的含义,但是代码告诉你,优化例程声明拟合过程已经收敛到估计值但是这个声明是假的并且拟合没有真正收敛

要注意的一件事是,是否存在可分性问题,其中一个预测变量或预测变量的线性组合可以完美地分割01个事件。

我建议您在R-SIG-Mixed邮件列表中进行跟进,其中有真正的专家可以提供进一步的帮助。您可能需要提供拟合过程的更多详细信息(打开详细模式)甚至数据,以便可以诊断问题。

答案 1 :(得分:6)

对于警告2,您可以增加迭代次数,默认值为300,以查看在添加更多迭代时它是否收敛。尝试:

glmer(dummy ~ constituency.coa + I(governat.part) + I(district2) + gdp.cap + lula.power + ifdm + bf.cap + year + (1 | munname), data=pool, family=binomial(link = "logit"), REML=T, verbose=T, control = list(maxIter = 600))

这会将它从300次迭代更改为600次,但如果不起作用,您可以尝试更多。