错误:ord< 26L不是TRUE

时间:2014-07-02 18:09:31

标签: r lme4

我正在运行混合效果模型:

a1fit1.1=glmer(Outcome_AprWatch_Exclude ~ Herd_size_2 +  w4a + w4b + as.factor(AgeSex_4_Coded_Clean) + (1 | EncounterID), data=attack, family=binomial(link="logit"), verbose=TRUE, nAGQ=30) 

结果是二进制(0/1),预测变量是连续的,除了AgeSex是一个因子。我有303个观察嵌套在173个邂逅中(这是我的随机变量)。我已经成功地使用这个代码超过一年半,运行了各种类似的模型,并且成功地操纵了集成点的数量(nAGQ = 1-30左右)。

出于某种原因,我现在运行代码时已经开始收到错误消息,但只有当我有nAGQ> 1时(我需要使用自适应高斯Hermite近似而不是laplace近似) )。

以下是我运行30个intpoints模型时出现的错误

Error: ord < 26L is not TRUE

以下是我现在使用较低的intpoint值(即2-7)获得的警告

Warning message:
In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :
Model failed to converge with max|grad| = 0.00114606 (tol = 0.001)

再次,当我使用nAGQ = 1

运行它时,我没有收到任何错误

正如我所说,这是我多次运行的模型,之前没有错误。另外,我已经在STATA中检查了这个模型(同样的模型有30个内点)并且没有遇到任何错误并且收到了我最初在R中运行模型时没有错误的相同输出(仅在上周左右! )。

我不确定为什么lme4现在给我错误的代码,我已经成功运行了很长时间。 lme4最近是否更新过,是否存在与更新相关的错误?任何人都可以提供任何帮助都会很棒。

仅供参考 - 我尝试卸载并重新安装R,RStudio和lme4,但不会更改错误消息。

1 个答案:

答案 0 :(得分:2)

去年发布了lme4的1.0版本并对代码进行了重大更改。由于您之前已经开始使用lme4,因此可以想象您的R可能直到今天才更新包。至少那是上个月发生在我身上的事情。

实际开发了一个lme4.0软件包来比较新旧lme4的结果。这是一个链接(http://hlplab.wordpress.com/2014/03/17/old-and-new-lme4/)。请注意,作者最近在页面顶部发布了更新。

(对不起,我应该只是评论但我的许可不允许)