이항 반응 변수와 범주 형 예측 변수로 glmm을 실행하고 있습니다. 무작위 효과는 데이터 수집에 사용 된 중첩 디자인에 의해 제공됩니다. 데이터는 다음과 같습니다.
m.gen1$treatment
[1] sucrose control protein control no_injection .....
Levels: no_injection control sucrose protein
m.gen1$emergence
[1] 1 0 0 1 0 1 1 1 1 1 1 0 0....
> m.gen1$nest
[1] 1 1 1 2 2 3 3 3 3 4 4 4 .....
Levels: 1 2 3 4 5 6 8 10 11 13 15 16 17 18 20 22 24
내가 처음 실행하는 모델은 다음과 같습니다
m.glmm.em.<-glmer(emergence~treatment + (1|nest),family=binomial,data=m.gen1)
다음과 같은 두 가지 경고가 나타납니다.
Warning messages:
1: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
Model failed to converge with max|grad| = 0.0240654 (tol = 0.001, component 4)
2: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
Model is nearly unidentifiable: large eigenvalue ratio
- Rescale variables?
모델 요약은 처리 중 하나에 비정상적으로 큰 표준 오류가 있으며 여기에서 볼 수 있습니다.
Fixed effects:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 2.565 1.038 2.472 0.0134 *
treatmentcontrol -1.718 1.246 -1.378 0.1681
treatmentsucrose 16.863 2048.000 0.008 0.9934
treatmentprotein -1.718 1.246 -1.378 0.1681
나는 glmer control과 다른 패키지의 함수에서 다른 옵티 마이저를 시도했지만 비슷한 결과를 얻었습니다. 임의 효과를 무시하고 glm을 사용하여 모델을 실행했는데 문제가 지속됩니다. 데이터를 탐색하면서 나는 높은 Std로 치료한다는 것을 깨달았습니다. 오류는 응답 변수에서만 성공합니다. 이것이 문제를 일으킬 수 있는지 확인하기 위해 해당 처리에 "실패"한 가짜 데이터 포인트를 추가했으며 모델이 원활하게 실행되고 합리적인 표준 오류가 발생합니다. 여기에서 볼 수 있습니다.
Fixed effects:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 3.4090 1.6712 2.040 0.0414 *
treatmentcontrol -1.8405 1.4290 -1.288 0.1978
treatmentsucrose -0.2582 1.6263 -0.159 0.8738
treatmentprotein -2.6530 1.5904 -1.668 0.0953 .
나는 그 치료에 대한 실패가 부족하여 좋은 추정을 방해하는지에 대한 직관이 옳은지 궁금하고,이 문제를 어떻게 해결할 수 있습니까?
미리 감사드립니다!