- 阅读权限
- 255
- 威望
- 0 级
- 论坛币
- 2061 个
- 通用积分
- 7.3192
- 学术水平
- 0 点
- 热心指数
- 0 点
- 信用等级
- 0 点
- 经验
- 16045 点
- 帖子
- 672
- 精华
- 0
- 在线时间
- 323 小时
- 注册时间
- 2018-10-12
- 最后登录
- 2024-4-28
教授
还不是VIP/贵宾
- 威望
- 0 级
- 论坛币
- 2061 个
- 通用积分
- 7.3192
- 学术水平
- 0 点
- 热心指数
- 0 点
- 信用等级
- 0 点
- 经验
- 16045 点
- 帖子
- 672
- 精华
- 0
- 在线时间
- 323 小时
- 注册时间
- 2018-10-12
- 最后登录
- 2024-4-28
| 开心 13 小时前 |
---|
签到天数: 630 天 连续签到: 1 天 [LV.9]以坛为家II
|
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
|
最佳答案
oliyiyi 查看完整内容
先检查数据质量,简化随机效应结构,调整固定效应表达式,改变算法,然后逐步尝试:
删除不显著的随机效应。
删除模型表达式中的交互项或高阶项。
去除可能的离群点或异常数据。
增加观测数,或减少要估计的变量数。
调整起始值设置。
尝试“port”算法。
增大最大迭代次数。
|