Estoy tratando de ayudar a un estudiante de un colega. El estudiante observó y contó el comportamiento de las aves (número de llamadas) en una configuración experimental. No se pudo determinar el número de llamadas atribuibles a un ave observada específica durante cada experimento, pero fue posible contar el número de pájaros que contribuyeron al número de llamadas registradas. Por lo tanto, mi sugerencia inicial fue incluir el número de aves como un término de compensación en un modelo Poisson GLM, por lo tanto, estaríamos ajustando el número esperado de llamadas por ave .
El problema con esto es que durante muchas ocasiones de observación no se observaron aves (y, por lo tanto, no hubo llamadas). El software (R en este caso) se queja porque (R se queja de contener datos pero eso es puramente el resultado de ser ).y
-Inf
offset(log(nbirds))
-Inf
En realidad sospecho que necesitamos un modelo de obstáculo (o similar) donde tengamos un modelo binomial separado para "llamadas observadas". (o no) y un modelo de recuento truncado para el número de llamadas (por ave) en situaciones donde hubo llamadas, donde incluimos el término de compensación solo en la parte de conteo del modelo.
Después de haber intentado esto usando el paquete pscl en R, pero sigo recibiendo el mismo error:
mod1 <- hurdle(NumberCallsCOPO ~ Condition * MoonVis +
offset(log(NumberCOPO)) | 1, data = Data,
dist = "poisson")
porque el mismo código R ( glm.fit
se usa internamente hurdle()
para ajustar la parte del modelo de conteo) está comprobando -Inf
aunque no creo que afecte el ajuste del modelo para esas observaciones. (¿Es una suposición correcta?)
Puedo hacer que el modelo se ajuste agregando un pequeño número a NumberCOPO
(digamos 0.0001
), pero esto es un fraude en el mejor de los casos.
¿Agregar esta pequeña corrección de continuidad estaría bien en la práctica? Si no es así, ¿qué otros enfoques deberíamos considerar al manejar datos en los que podríamos querer usar un desplazamiento en un modelo de Poisson donde la variable de desplazamiento puede tomar el valor 0? Todos los ejemplos que he encontrado son para situaciones en las que un 0 no sería posible para la variable de desplazamiento.