¿Cómo es posible que Poisson GLM acepte números no enteros?


17

¡Estoy realmente sorprendido por el hecho de que Poisson GLM acepta números no enteros! Mira:

Datos (contenido de data.txt):

1   2001    0.25  1
1   2002    0.5   1
1   2003    1     1
2   2001    0.25  1
2   2002    0.5   1
2   2003    1     1

R script:

t        <- read.table("data.txt")
names(t) <- c('site', 'year', 'count', 'weight')
tm       <- glm(count ~ 0 + as.factor(site) + as.factor(year), data = t, 
                family = "quasipoisson")  # also works with family="poisson"
years    <- 2001:2003
plot(years, exp(c(0, tail(coef(tm), length(years)-1))), type = "l")

El índice del año resultante es el "esperado", es decir, 1-2-4en años 2001-2003.

Pero, ¿cómo es posible que Poisson GLM tome números no enteros? ¡La distribución de Poisson siempre ha sido solo de enteros!


2
¿Podría aclarar qué es exactamente lo que quiere saber? ¿Cómo trata el algoritmo de ajuste con los no enteros? ¿O por qué R no verifica si la respuesta es un número entero? ¿O si algo está mal en el resultado cuando se suministran números enteros?
Momo

@Momo, sí, ¡todas estas preguntas son interesantes!
Curioso

2
Edite su pregunta para reflejar eso. Es más probable que obtenga una buena respuesta de esta manera.
Momo

8
No es que esto realmente importe, ya que también es cierto family="poisson", pero tenga en cuenta que su ejemplo no es un Poisson GLM, ya que está utilizando la quasipoissonfamilia, que de todos modos solo depende de la relación entre la media y la varianza, así que en eso caso, no debería sorprendernos tomar números no enteros.
Aaron - Restablece a Monica el

1
Aquí hay algunas referencias sobre por qué esto podría tener sentido.
Dimitriy V. Masterov

Respuestas:


17

Por supuesto, tiene razón en que la distribución de Poisson técnicamente se define solo para enteros. Sin embargo, el modelado estadístico es el arte de buenas aproximaciones (" todos los modelos están equivocados "), y hay ocasiones en que tiene sentido tratar los datos no enteros como si fueran [aproximadamente] Poisson.

Por ejemplo, si envía dos observadores para registrar los mismos datos de conteo, puede suceder que los dos observadores no siempre estén de acuerdo con el conteo; uno podría decir que algo sucedió 3 veces mientras que el otro dijo que sucedió 4 veces. Es bueno tener la opción de usar 3.5 al ajustar los coeficientes de Poisson, en lugar de tener que elegir entre 3 y 4.

Computacionalmente, el factorial en el Poisson podría hacer que parezca difícil trabajar con no enteros, pero existe una generalización continua del factorial. Además, realizar la estimación de máxima verosimilitud para el Poisson ni siquiera implica la función factorial, una vez que simplifica la expresión .


15

yX

miYyo=ExpβTXyo
VarYyo=miYyo
β
yonorteXyo(yyo-ExpβTXyo)=0 0

Esto se desprende del enfoque del método de los momentos que aprendimos en la escuela y conduce a la de las ecuaciones de estimación generalizadas .

@ Aaron señaló que en realidad estás usando un ajuste cuasi-Poisson en tu código. Eso significa que la varianza es proporcional a la media

VarYyo=ϕmiYyo

con un parámetro de dispersión que puede estimarse a partir de los datos. Los coeficientes estimados serán los mismos, pero sus errores estándar serán más amplios; Este es un enfoque más flexible y, por lo tanto, más útil en general. (Tenga en cuenta también que los estimadores sandwich para la matriz de varianza-covarianza de los parámetros a menudo se utilizan en este tipo de situaciones para dar errores estándar robustos).ϕ

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.