gpt4 book ai didi

r - 增加新版本 lmer 的迭代?

转载 作者:行者123 更新时间:2023-12-04 00:47:10 25 4
gpt4 key购买 nike

我刚刚将 lme4 更新到 1.0-4 版,当我运行 lmer() 时,我之前收敛的混合效果模型现在会打印此警告:

Warning message:
In (function (fn, par, lower = rep.int(-Inf, n), upper = rep.int(Inf, :
failure to converge in 10000 evaluations

所以,我想尝试增加迭代次数,看看我是否可以解决这个问题。 (我必须说我不知道​​是什么导致了警告,因为消息的第一部分听起来有点不透明)。无论如何,我在文档中读到,现在我应该使用 lmerControl() ,但我一直无法实现它。有人可以给我一个具体的例子,说明你如何做到具体? (帮助文件没有帮助)。这是我的模型:
m <- lmer(RT ~ Factor1*Factor2 + (0+Factor1+Factor2|Subject) + (1|Subject)  + (1|Item) + (0+Factor1+Factor2|Item), data= data)

非常感谢!

最佳答案

lmerControl函数允许您选择优化器并将控制参数传递给它。控制迭代次数或评估次数的参数因函数而异(如 lmerControl 的帮助页面中所述)。默认优化器是“Nelder_Mead”,对于该优化器选择,可以通过在“optCtrl”参数列表中指定“maxfun”来更改最大评估次数:

m <- lmer(RT ~ Factor1*Factor2 + (0+Factor1+Factor2|Subject) + 
(1|Subject) + (1|Item) + (0+Factor1+Factor2|Item),
data= data, control=lmerControl(optCtrl=list(maxfun=20000) ) )

这并不能保证会达到收敛。 (我的经验是默认的最大值通常就足够了。)很可能您的数据不足以支持模型的复杂性,或者模型的构建不正确以用于研究设计。

迟来的感谢@NBrouwer 将这个建议扩展到 glmerglmControl .

关于r - 增加新版本 lmer 的迭代?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19478686/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com