EDIT: Gracias por la ayuda hasta ahora. He actualizado la pregunta basándome en el trabajo posterior.
Estoy interesado en encontrar cualquier diferencia en la respuesta de los recuentos de dos especies competidoras a la sequedad y la elevación. Ambas se capturan en el mismo tipo de trampa, pero la colocación de la trampa (arbustos frente a edificios) probablemente sesga hacia una especie o la otra, por lo que cada colocación de la trampa se clasifica según el interior/exterior en una escala de 1-3. Una trampa no se mueve una vez colocada. Las trampas están anidadas en sitios, la sequedad se mide en cada combinación de sitio/visita, y la elevación es, por supuesto, constante en cada sitio.
Mis datos incluyen el número de cada especie capturada en 4-12 trampas, en 8-12 sitios durante 6-8 visitas a cada sitio. Las visitas y los sitios están lo suficientemente espaciados como para suponer que son independientes. La mayoría de los datos son ceros, especialmente para Sp_A, que es poco frecuente. A continuación se muestra la estructura de los datos.
R> str(mydata)
'data.frame': 300 obs. of 8 variables:
$ count : num 0 5 1 0 1 1 0 0 0 0 ...
$ species : Factor w/ 2 levels "a","b": 1 1 1 1 1 1 1 1 1 1 ...
$ elevation: int 1 1 1 1 1 1 1 1 1 1 ...
$ dryness : num 0.179 0.179 0.179 0.179 0.179 ...
$ site : Factor w/ 5 levels "a","b","c","d",..: 1 1 1 1 1 1 1 1 1 1 ...
$ trap : Factor w/ 50 levels "MT10a","MT10b",..: 6 11 16 21 26 31 36 41 46 1 ...
$ visit : Factor w/ 3 levels "1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
$ in_out : num 1 1 1 1 1 1 1 1 1 1 ...
Como intento inicial, no tuve problemas en utilizar la función de R lmer
para modelar la presencia/ausencia de Sp_A con Sp_B como covariable: (SpA>0) ~ Sp_B + elevation + (1|site/trap) + (1|visit)
Sin embargo, por sugerencia de la lista de R-sig-mixed-models, y también de "ils" de este sitio, he remodelado los datos como se ve arriba, y he intentado modelar el recuento con las especies como un factor en el modelo. He utilizado dos paquetes diferentes (lme4 y glmmADMB). Las funciones manejan bien los datos en modelos simples, hasta que añado el factor "especies". Abajo está el código de R y los mensajes de error. Estos mismos errores también ocurren cuando uso datos ficticios más simples. ¿Alguna idea sobre la sintaxis u otros paquetes?
require(lme4)
glmera1 <- glmer(count~elevation*species*in_out
+ (1|visit) + (1|site/trap),
data=mydata, family="poisson")
Error in asMethod(object) : matrix is not symmetric [1,2]
In addition: Warning messages:
1: In mer_finalize(ans) :
Cholmod warning 'not positive definite' at file:../Cholesky/t_cholmod_rowfac.c, line 432
2: In mer_finalize(ans) :
Cholmod warning 'not positive definite' at file:../Cholesky/t_cholmod_rowfac.c, line 432
3: In mer_finalize(ans) : singular convergence (7)
require(glmmADMB)
admba1 <- glmm.admb(count~elevation*species*in_out, random=~visit,
group="site", data=mydata, family="nbinom")
Error in glmm.admb(count ~ elevation * species * in_out, random = ~visit, :
The function maximizer failed
In addition: Warning message:
running command './nbmm -maxfn 500 ' had status 1