全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1163 2
2023-09-15
悬赏 200 个论坛币 已解决
我在使用R语言做混合模型时,出现了不收敛的情况。请各位帮忙看看如何改进代码可以收敛,非常感谢。数据我放到附加中。以下是我的程序和报错信息和警告信息:
dat5.xlsx
大小:(22.9 KB)

 马上下载



dat5<-rbind(#使4个响应变量都在y中,以index列区分
    + cbind(plot=data$region,tree=data$plotno,index=1,y=data$wb,
            G_wb=data$G,
           H69_wb=data$H69,
            G_wr=0,
            H69_wr=0),
  + cbind(plot=data$region,tree=data$plotno,index=2,y=data$wr,
            G_wb=0,
            H69_wb=0,
            G_wr=data$G,
             H69_wr=data$H69))
  dat5<-as.data.frame(dat5)
  
  fm24.nlme<-nlme(y~(b12)*G_wb^(b22)*H69_wb^(b32)+                     (b14)*G_wr^(b24)*H69_wr^(b34),
                  data=dat5,
                  fixed=b12+b22+b32+
                     b14+b24+b34~1,  
                  random=(b12+b14~1|plot),
                 weights=varIdent(form = ~1|index),
                   corr=corSymm(form = ~index|plot/tree),
                  start=c(b12=0.01206,b22=1.03969,b32=1.48287,
                           b14=0.4466,b24=1.02909,b34=0.2541),
                   control=list(maxIter=5000,msMaxIter=5000,msMaxEval=5000))

Error in nlme.formula(y ~ (b12) * G_wb^(b22) * H69_wb^(b32) + (b14) *  :
  maximum number of iterations (maxIter = 5000) reached without convergence
In addition: There were 35 warnings (use warnings() to see them)
>   fm24.nlme
Error: object 'fm24.nlme' not found
> warnings()
警告信息:
1: In nlme.formula(y ~ (b12) * G_wb^(b22) * H69_wb^(b32) +  ... :
  Iteration 1, LME step: nlminb() did not converge (code = 1). PORT message: singular convergence (7)
2: In nlme.formula(y ~ (b12) * G_wb^(b22) * H69_wb^(b32) +  ... :
  Singular precision matrix in level -1, block 1
3: In nlme.formula(y ~ (b12) * G_wb^(b22) * H69_wb^(b32) +  ... :
  Singular precision matrix in level -1, block 1
4: In nlme.formula(y ~ (b12) * G_wb^(b22) * H69_wb^(b32) +  ... :
  Singular precision matrix in level -1, block 1
5: In nlme.formula(y ~ (b12) * G_wb^(b22) * H69_wb^(b32) +  ... :
  Singular precision matrix in level -1, block 1







example.xlsx

大小:22.9 KB

 马上下载

数据

最佳答案

oliyiyi 查看完整内容

先检查数据质量,简化随机效应结构,调整固定效应表达式,改变算法,然后逐步尝试: 删除不显著的随机效应。 删除模型表达式中的交互项或高阶项。 去除可能的离群点或异常数据。 增加观测数,或减少要估计的变量数。 调整起始值设置。 尝试“port”算法。 增大最大迭代次数。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2023-9-15 20:44:30
先检查数据质量,简化随机效应结构,调整固定效应表达式,改变算法,然后逐步尝试:

删除不显著的随机效应。
删除模型表达式中的交互项或高阶项。
去除可能的离群点或异常数据。
增加观测数,或减少要估计的变量数。
调整起始值设置。
尝试“port”算法。
增大最大迭代次数。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2023-9-30 13:09:11
oliyiyi 发表于 2023-9-19 01:10
先检查数据质量,简化随机效应结构,调整固定效应表达式,改变算法,然后逐步尝试:

删除不显著的随机效应。 ...
这个回复的建议,中肯。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群