首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么在nlme中会遇到趋同问题?

为什么在nlme中会遇到趋同问题?
EN

Stack Overflow用户
提问于 2022-08-26 08:32:08
回答 1查看 58关注 0票数 1

我使用nlme运行以下模型:

代码语言:javascript
复制
library(nlme)

fm4Oats <- lme( yield ~ nitro, data = Oats, random = ~ 1 | Block/Variety )
    
fm4Oats2 <- lme( yield ~ nitro, data = Oats, random = ~ nitro | Block/Variety )
    
fm4Oats3 <- lme( yield ~ nitro, data = Oats, random = ~ nitro | Block )
    
fm4Oats4 <- lme( yield ~ nitro, data = Oats, random = ~ nitro | Variety )

除了fm4Oats之外,所有其他3种模型都返回相同的错误消息:

代码语言:javascript
复制
nlminb problem, convergence error code = 1
  message = iteration limit reached without convergence (10)

我按照post添加了control参数:

代码语言:javascript
复制
fm4Oats5 <- lme(yield ~ nitro, data = Oats, random = ~ nitro | Variety,
                control = list(msMaxIter = 1000, msMaxEval = 1000))

这导致了另一条错误消息:

代码语言:javascript
复制
Error in lme.formula(yield ~ nitro, data = Oats, random = ~nitro | Variety,  : 
  nlminb problem, convergence error code = 1
  message = singular convergence (7)

我感兴趣的是,为什么我会遇到一个趋同的问题,以及可能的解决办法。

EN

回答 1

Stack Overflow用户

发布于 2022-09-13 07:47:23

对于lmer模型的输出,我并不完全感到惊讶。看起来,这些模型可以估计的方差数量是相当小的。第三种模式是第一种出现趋同问题的模型,我创建了这个模型来查看发生了什么:

代码语言:javascript
复制
ggplot(Oats,
       aes(x=nitro,
           y=yield))+
  geom_point()+
  geom_smooth()+
  facet_grid(Block~Variety)

你可以在这里看到,斜坡,数据点和斜坡之间的变化都很小。另一个问题是水平的数量。如果您只有3个级别的Variety,那么它不太可能接近一个好的模型。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73498176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档