6 votos

Pruebas de significación de un modelo glmmADMB de efecto aleatorio

A continuación se muestra el resultado de un modelo de puntuaciones de pruebas de objetos nuevos ajustado con el nbinom1 (quasi-Poisson) en glmmADMB . He utilizado este paquete/método porque:

  1. la media de Poisson es < 5, por lo que según Bolker et al. 2009 no debería utilizar glmmPQL
  2. hubo sobredifusión con el modelo de Poisson ejecutado con glmer . El modelo NB1 ajustado con glmmADMB fue el mejor de todos los ajustes que probé.

Hay 3 factores fijos como los que se indican a continuación, así como un Sex - Age y el término de interacción individual ( ID ) es el factor aleatorio.

Call:
glmmadmb(formula = Score ~ Sex * Age + Object + (1 | ID), data = PGS, 
    family = "nbinom1")

AIC: 394.5

Coefficients:
              Estimate Std. Error z value Pr(>|z|)
(Intercept)      0.480      0.195    2.47   0.0137
SexM             0.797      0.262    3.05   0.0023
AgeS             1.224      0.254    4.82  1.4e-06
ObjectPLA       -0.434      0.194   -2.24   0.0248
ObjectSCO       -0.822      0.203   -4.05  5.1e-05 
SexM:AgeS       -0.825      0.353   -2.33   0.0196 

Number of observations: total=105, ID=40 

Random effect variance(s):
Group=ID<br/>
            Variance StdDev<br/>
(Intercept)  0.03738 0.1933

Negative binomial dispersion parameter: 1.5958 (std. err.: 0.34873)

Log-likelihood: -189.228

Pregunta: ¿Cómo puedo comprobar si el efecto aleatorio es significativo? He buscado en Internet, y cuando hay múltiples efectos aleatorios parece sencillo, pero sé que no puedo comparar el GLMM a un GLM sin mi único efecto aleatorio según la información en http://glmm.wikidot.com/faq .

He probado el de Ben Bolker varprof en el ejemplo de los peces de arrecife:

varprof(PGS.nbinom1)
Error in varprof(PGS.nbinom1) : <br/>
  trying to get slot "deviance" from an object (class "glmmadmb") that is not an S4 object

Así como su simulate.glm(PGS.nbinom1) :

simulate.glm(PGS.nbinom1)
Error in simulate.glm(M1) : family nbinom not implemented

Y también a la manera de Jeff Evans, publicada en archiveorange.com donde ejecuté el modelo con una variable ficticia no informativa (una columna con la palabra "ficticia" en cada fila) y lo comparé con mi modelo con ANOVA, pero también obtuve un mensaje de advertencia aquí:

anova(M1,M2)
Analysis of Deviance Table

Model 1: Score ~ Sex * Age + Object<br/>
Model 2: Score ~ Sex * Age + Object<br/>
  NoPar  LogLik Df Deviance Pr(>Chi)<br/>
1     8 -189.23 <br/>                    
2     8 -189.32  0    -0.19        1<br/>

Warning message:
In anova.glmmadmb(M1, M2) :<br/>
  something's wrong: models should be nested, increasing complexity should imply increasing log-likelihood

¿Qué más puedo probar? Cualquier ayuda será muy apreciada.

7voto

Ben Bolker Puntos 8729

Porque glmmADMB (a diferencia de lme4 ) puede manejar modelos sin efectos aleatorios en el mismo marco, y por lo tanto obtener una probabilidad logarítmica acorde, debería poder hacerlo:

g1 <- glmmadmb(formula = Score ~ Sex * Age + Object + (1 | ID), 
  data = PGS, family = "nbinom1")
g2 <- glmmadmb(formula = Score ~ Sex * Age + Object, 
  data = PGS, family = "nbinom1")
anova(g1,g2)

(No has dado un ejemplo reproducible, así que no estoy probando esto.) Sin embargo, incluso si esto funciona, sería prudente echar un vistazo a las precauciones en "¿Cómo puedo comprobar si un efecto aleatorio es significativo? sobre las FAQ del MLG (es decir, cuestiones estadísticas/inferenciales más que computacionales).

1 votos

Muchas gracias. Ejecuté su solución, y parecía "funcionar", pero recibí un mensaje que decía "La matriz de covarianza estimada puede no ser positiva definida" para el GLM, ¿es esto algo de lo que debería preocuparme?

2 votos

Si los resultados parecen sensatos, proceda con precaución.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X