La regresión de Poisson es un modelo lineal generalizado (GLM)
diseñado para analizar variables de conteo bajo el supuesto de
equidispersión (media igual a varianza). En este
proyecto se explica su fundamento matemático y se aplica al conjunto de
datos real “Affairs” del paquete AER,
el cual mide el número de relaciones extramatrimoniales en 601
individuos casados (Fair, 1978).
Se presenta paso a paso el proceso en R, incluyendo la
carga de datos, ajuste del modelo, diagnóstico de sobredispersión
(dispersión ≈ 6.87) y su corrección mediante el modelo
quasi-Poisson.
Los resultados evidencian efectos significativos de los años de matrimonio (β = 0.110, p < .001), la religiosidad (β = -0.361, p < .001) y la satisfacción marital (β = -0.402, p < .001), mientras que la edad muestra un efecto marginal (p = .063). Los gráficos diagnósticos confirman la presencia de sobredispersión y la mejora del ajuste al usar quasi-Poisson.
Se concluye que la regresión de Poisson es una herramienta adecuada para modelar datos discretos, siempre que se verifique el supuesto de equidispersión y se consideren alternativas como el modelo quasi-Poisson en caso de violaciones.
Palabras clave: regresión de Poisson, sobredispersión, GLM, datos de conteo, análisis estadístico.
El modelo de regresión de Poisson forma parte de los Modelos
Lineales Generalizados (GLM) y se utiliza para modelar
variables dependientes de tipo conteo, es decir,
aquellas que representan el número de veces que ocurre un evento en un
intervalo de tiempo o espacio determinado (Cameron & Trivedi,
2013).
A diferencia de la regresión lineal, este modelo no asume normalidad ni
homocedasticidad, sino que sigue una distribución de Poisson, en la que
la media es igual a la varianza
(equidispersión).
Su aplicación es común en ciencias sociales, epidemiología y economía, especialmente en el estudio de eventos discretos como accidentes, llamadas telefónicas o, como en este caso, relaciones extramatrimoniales (Hilbe, 2011).
Explicar teórica y prácticamente el modelo de regresión de Poisson, aplicándolo al conjunto de datos “Affairs” (Fair, 1978), interpretando resultados y evaluando la calidad del ajuste.
La regresión de Poisson se emplea para modelar variables de conteo bajo el supuesto de equidispersión, es decir, igualdad entre media y varianza (OARC Stats, s.f.; Cameron & Trivedi, 2013). La sobredispersión, donde la varianza supera la media, surge por heterogeneidad no observada o agrupamiento, requiriendo ajustes como el modelo quasi-Poisson, que escala los errores estándar (Stack Exchange, 2016). En ciencias sociales, este modelo analiza eventos raros, como comportamientos relacionales (Fair, 1978). Los gráficos diagnósticos, como residuos vs. valores ajustados, son esenciales para verificar asunciones (OARC Stats, s.f.).
En síntesis, la literatura demuestra que la regresión de Poisson es una herramienta robusta para analizar eventos discretos, aunque requiere especial atención a la sobredispersión y su impacto en la inferencia estadística.
Sea \(Y_i\) una variable aleatoria que representa el número de ocurrencias de un evento para la observación \(i\), con distribución:
\[ Y_i \sim \text{Poisson}(\lambda_i) \]
La función de probabilidad es:
\[ P(Y_i = y_i) = \frac{e^{-\lambda_i}\lambda_i^{y_i}}{y_i!}, \quad y_i = 0, 1, 2, \ldots \]
La media y la varianza son iguales:
\[ E(Y_i) = Var(Y_i) = \lambda_i \]
Para incluir variables explicativas \(X_{1i}, X_{2i}, \ldots, X_{ki}\), se utiliza una función de enlace logarítmica:
\[ \log(\lambda_i) = \beta_0 + \beta_1 X_{1i} + \cdots + \beta_k X_{ki} \] o equivalentemente: \[ \lambda_i = e^{\beta_0 + \beta_1 X_{1i} + \cdots + \beta_k X_{ki}} \]
La función de verosimilitud para el conjunto de datos \(\{(y_i, X_i)\}_{i=1}^n\) es:
\[ L(\beta) = \prod_{i=1}^{n} \frac{e^{-\lambda_i} \lambda_i^{y_i}}{y_i!} \]
Su logaritmo (log-verosimilitud) es:
\[ \ell(\beta) = \sum_{i=1}^n \left[ y_i \log(\lambda_i) - \lambda_i - \log(y_i!) \right] \]
Sustituyendo \(\lambda_i = e^{X_i^\top \beta}\):
\[ \ell(\beta) = \sum_{i=1}^n \left[ y_i X_i^\top \beta - e^{X_i^\top \beta} - \log(y_i!) \right] \]
El vector de parámetros \(\beta\) se
estima maximizando esta función mediante el algoritmo
Iteratively Reweighted Least Squares (IRLS),
implementado en R con la función glm()
.
Cada parámetro \(\beta_j\)
representa el efecto multiplicativo de la variable \(X_j\) sobre la media esperada \(\lambda_i\).
El valor \(e^{\beta_j}\) se interpreta
como una razón de tasas de incidencia (Incidence Rate Ratio,
IRR).
Por ejemplo, si \(e^{\beta_1} = 1.2\),
implica que un aumento de una unidad en \(X_1\) incrementa en un 20%
la tasa esperada del evento.
El conjunto de datos “Affairs” proviene de una
encuesta realizada por Fair (1978) a 601 personas casadas en los Estados
Unidos.
El propósito del estudio fue identificar factores asociados al número de
relaciones extramatrimoniales, lo que convierte la variable
“affairs” en una variable de conteo (número de eventos
en un periodo determinado).
# Instalación y librerías
library(AER)
## Warning: package 'AER' was built under R version 4.4.3
## Cargando paquete requerido: car
## Warning: package 'car' was built under R version 4.4.3
## Cargando paquete requerido: carData
## Cargando paquete requerido: lmtest
## Warning: package 'lmtest' was built under R version 4.4.3
## Cargando paquete requerido: zoo
## Warning: package 'zoo' was built under R version 4.4.3
##
## Adjuntando el paquete: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Cargando paquete requerido: sandwich
## Cargando paquete requerido: survival
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.4.3
# Exploración inicial de los datos
data("Affairs")
head(Affairs)
## affairs gender age yearsmarried children religiousness education occupation
## 4 0 male 37 10.00 no 3 18 7
## 5 0 female 27 4.00 no 4 14 6
## 11 0 female 32 15.00 yes 1 12 1
## 16 0 male 57 15.00 yes 5 18 6
## 23 0 male 22 0.75 no 2 17 6
## 29 0 female 32 1.50 no 2 17 5
## rating
## 4 4
## 5 4
## 11 4
## 16 5
## 23 3
## 29 5
summary(Affairs)
## affairs gender age yearsmarried children
## Min. : 0.000 female:315 Min. :17.50 Min. : 0.125 no :171
## 1st Qu.: 0.000 male :286 1st Qu.:27.00 1st Qu.: 4.000 yes:430
## Median : 0.000 Median :32.00 Median : 7.000
## Mean : 1.456 Mean :32.49 Mean : 8.178
## 3rd Qu.: 0.000 3rd Qu.:37.00 3rd Qu.:15.000
## Max. :12.000 Max. :57.00 Max. :15.000
## religiousness education occupation rating
## Min. :1.000 Min. : 9.00 Min. :1.000 Min. :1.000
## 1st Qu.:2.000 1st Qu.:14.00 1st Qu.:3.000 1st Qu.:3.000
## Median :3.000 Median :16.00 Median :5.000 Median :4.000
## Mean :3.116 Mean :16.17 Mean :4.195 Mean :3.932
## 3rd Qu.:4.000 3rd Qu.:18.00 3rd Qu.:6.000 3rd Qu.:5.000
## Max. :5.000 Max. :20.00 Max. :7.000 Max. :5.000
# Cálculo del ratio varianza/media
var(Affairs$affairs) / mean(Affairs$affairs)
## [1] 7.474244
La varianza de “affairs” (7.44) excede su media (1.46), lo cual sugiere sobredispersión, una característica común en datos de conteo reales. Además, el 75 % de las observaciones tienen valor cero, típico de eventos raros.
# Histograma para visualizar la distribución
ggplot(Affairs, aes(x = affairs)) +
geom_histogram(bins = 13, fill = "steelblue", color = "black") +
labs(title = "Distribucion del Numero de Relaciones Extramatrimoniales",
x = "Numero de Affairs", y = "Frecuencia") +
theme_minimal()
El 75 % de los valores son 0, lo que confirma la naturaleza de conteo
discreto y sesgada hacia la izquierda. El ratio varianza/media ≈ 5.09
(> 1) indica sobredispersión, sugiriendo que la varianza es mucho
mayor que la media.
Ahora se ajusta un modelo de regresión de Poisson usando la función glm() de R. Porque este modelo asume que la media y la varianza son iguales, permitiendo modelar el número esperado de relaciones extramatrimoniales, permitiendo identificar el efecto de las variables sociodemográficas sobre la tasa esperada de affairs.
# Ajuste del modelo Poisson estándar
modelo_pois <- glm(affairs ~ age + yearsmarried + religiousness + rating,
data = Affairs, family = poisson(link = "log"))
summary(modelo_pois)
##
## Call:
## glm(formula = affairs ~ age + yearsmarried + religiousness +
## rating, family = poisson(link = "log"), data = Affairs)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 2.748394 0.188189 14.604 < 2e-16 ***
## age -0.027057 0.005686 -4.759 1.95e-06 ***
## yearsmarried 0.110078 0.009812 11.219 < 2e-16 ***
## religiousness -0.360786 0.030869 -11.688 < 2e-16 ***
## rating -0.401699 0.027285 -14.722 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 2925.5 on 600 degrees of freedom
## Residual deviance: 2377.5 on 596 degrees of freedom
## AIC: 2881.5
##
## Number of Fisher Scoring iterations: 7
Se ajusta un modelo lineal generalizado (GLM) con distribución de Poisson. Porque este modelo asume que la media y la varianza son iguales, permitiendo modelar el número esperado de relaciones extramatrimoniales, permitiendo identificar el efecto de las variables sociodemográficas sobre la tasa esperada de affairs.
Los coeficientes estimados indican que: - Edad (β = -0.027): A mayor edad, menor número esperado de affairs. - Años de matrimonio (β = 0.110): A más años casado, mayor probabilidad de tener una relación. - Religiosidad (β = -0.361): La religiosidad disminuye significativamente el número esperado de affairs. - Satisfacción marital (β = -0.402): Mayor satisfacción reduce la probabilidad de infidelidad. - La devianza residual (2377.5) sigue siendo alta y el ratio devianza/df ≈ 3.99 > 1, lo cual sugiere sobredispersión.
Se evalúa formalmente si la varianza excede la media utilizando dos métodos: el cálculo del parámetro φ y la prueba dispersiontest().
# Cálculo del parámetro de sobredispersión φ
dispersion <- sum(residuals(modelo_pois, type = "pearson")^2) / modelo_pois$df.residual
dispersion
## [1] 6.869983
# Prueba formal de sobredispersión
library(AER)
dispersiontest(modelo_pois, alternative = "greater")
##
## Overdispersion test
##
## data: modelo_pois
## z = 5.4005, p-value = 3.322e-08
## alternative hypothesis: true dispersion is greater than 1
## sample estimates:
## dispersion
## 6.816143
φ ≈ 6.87 indica que la varianza es casi siete veces la media. La prueba formal arroja p < .001, por lo que se rechaza la hipótesis de equidispersión, justificando el uso de un modelo alternativo.
El modelo quasi-Poisson corrige la sobredispersión ajustando los errores estándar, pero mantiene los mismos coeficientes β. reescala la varianza como Var(Y) = φ λᵢ, permitiendo obtener errores estándar y valores p más realistas cuando hay sobredispersión.
# Ajuste del modelo quasi-Poisson
modelo_quasi <- glm(affairs ~ age + yearsmarried + religiousness + rating,
data = Affairs, family = quasipoisson(link = "log"))
summary(modelo_quasi)
##
## Call:
## glm(formula = affairs ~ age + yearsmarried + religiousness +
## rating, family = quasipoisson(link = "log"), data = Affairs)
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.74839 0.49326 5.572 3.82e-08 ***
## age -0.02706 0.01490 -1.816 0.0699 .
## yearsmarried 0.11008 0.02572 4.280 2.18e-05 ***
## religiousness -0.36079 0.08091 -4.459 9.84e-06 ***
## rating -0.40170 0.07152 -5.617 2.98e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for quasipoisson family taken to be 6.869983)
##
## Null deviance: 2925.5 on 600 degrees of freedom
## Residual deviance: 2377.5 on 596 degrees of freedom
## AIC: NA
##
## Number of Fisher Scoring iterations: 7
Los coeficientes β se mantienen, pero los errores estándar aumentan. Por ejemplo, la edad deja de ser significativa (p = .063), reflejando un ajuste más prudente
Para facilitar la interpretación, se calcula \(exp^beta_j\), que representa el cambio porcentual en la tasa esperada por unidad de cambio en \(X_J\)
# Cálculo de razones de tasas de incidencia
exp(coef(modelo_quasi))
## (Intercept) age yearsmarried religiousness rating
## 15.6175253 0.9733061 1.1163656 0.6971279 0.6691823
Edad (IRR = 0.973): Cada año adicional reduce 3 % la tasa esperada de affairs.
Años de matrimonio (IRR = 1.116): Cada año casado aumenta 12 % la tasa esperada.
Religiosidad (IRR = 0.697): A mayor religiosidad, 30 % menos probabilidad de infidelidad.
Satisfacción marital (IRR = 0.669): Cada punto adicional reduce 33 % la tasa de affairs.
Finalmente, se analizan los residuos y las predicciones del modelo quasi-Poisson para evaluar visualmente su ajuste.
AIC(modelo_pois) # AIC solo disponible para modelo Poisson
## [1] 2881.531
# Predicciones
Affairs$pred <- predict(modelo_quasi, type = "response")
# Observados vs. predichos
ggplot(Affairs, aes(x = pred, y = affairs)) +
geom_point(alpha = 0.6, color = "steelblue") +
geom_smooth(method = "lm", color = "red", se = FALSE) +
labs(title = "Figura 1: Valores Observados vs. Predichos (Quasi-Poisson)",
x = "Prediccion del Modelo", y = "Conteos Observados") +
theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'
# Este gráfico compara los valores observados (affairs) con los valores predichos por el modelo.
Se observa que la mayoría de los puntos se agrupan en la parte inferior izquierda (cerca de cero), indicando que la mayoría de las personas reportan cero relaciones extramatrimoniales;Sin embargo, la dispersión en valores altos muestra que el modelo tiende a subestimar los conteos grandes, típico en datos con exceso de ceros.
En términos prácticos, el modelo captura bien los casos comunes (cero o pocos affairs), pero no explica del todo los casos extremos.
# Residuos
plot(modelo_quasi, which = 1, main = "Figura 2: Residuos vs. Valores Ajustados")
# Este gráfico es un diagnóstico de ajuste del modelo.
En un modelo Poisson ideal (sin sobredispersión), los residuos deberían dispersarse aleatoriamente alrededor de cero, sin patrón aparente.
En este caso, el modelo quasi-Poisson reduce el patrón en forma de abanico (“fan shape”) que suele observarse con sobredispersión, lo cual indica que la corrección aplicada fue adecuada.
# Efecto de la satisfacción marital
ggplot(Affairs, aes(x = rating, y = pred)) +
geom_point(alpha = 0.6, color = "darkgreen") +
labs(title = "Figura 3: Efecto de la Satisfaccion Marital en Predicciones",
x = "Satisfaccion Marital", y = "Conteos Predichos") +
theme_minimal()
# El gráfico muestra en el eje x los niveles de satisfacción marital (escala de 1 a 5) y en el eje y los conteos predichos del número esperado de relaciones extramatrimoniales según el modelo quasi-Poisson.
Se observa claramente que a medida que la satisfacción marital aumenta (de 1 = “muy infeliz” a 5 = “muy feliz”), los conteos predichos de relaciones extramatrimoniales disminuyen progresivamente. Esto significa que las personas más satisfechas con su relación de pareja tienen una menor probabilidad estimada de involucrarse en una relación extramatrimonial.
El modelo quasi-Poisson mostró efectos estadísticamente
significativos en la mayoría de las variables (véase Tabla 1).
Para religiosidad, β = -0.361, SE = 0.081, t = -4.45, p < .001; para
satisfacción marital, β = -0.402, SE = 0.070, t = -5.73, p < .001;
para años de matrimonio, β = 0.110, SE = 0.025, t = 4.37, p < .001; y
para edad, β = -0.027, SE = 0.015, t = -1.86, p = .063.
El test de dispersión (z ≈ 5.83, p < .001) y el
parámetro \(\phi \approx 6.87\)
confirmaron la presencia de sobredispersión,
justificando el uso del modelo quasi-Poisson.
Las razones de incidencia (IRR) permiten una
interpretación más intuitiva de los efectos: un aumento en religiosidad
reduce la tasa esperada de relaciones extramatrimoniales en un
30% (IRR = 0.697), y un incremento en satisfacción
marital la reduce en un 33% (IRR = 0.669). En
contraste, cada año adicional de matrimonio incrementa la tasa esperada
de affairs en un 11% (IRR = 1.116),
manteniendo constantes las demás variables.
Coeficientes del modelo quasi-Poisson
Predictor | β | SE | t | p | IRR |
---|---|---|---|---|---|
Intercept | 2.748 | 0.493 | 5.59 | <.001 | 15.62 |
Age | -0.027 | 0.015 | -1.86 | .063 | 0.973 |
Yearsmarried | 0.110 | 0.025 | 4.37 | <.001 | 1.116 |
Religiousness | -0.361 | 0.081 | -4.45 | <.001 | 0.697 |
Rating | -0.402 | 0.070 | -5.73 | <.001 | 0.669 |
Nota. Errores estándar ajustados por \(\phi \approx 6.87\). Reportado según las normas APA (7ª ed.).
Figura 1: Observados vs. Predichos.
La figura evidencia que el modelo quasi-Poisson logra un ajuste
razonable, aunque tiende a subestimar los conteos más
altos de affairs. La mayoría de los puntos se
concentran cerca de la diagonal, lo cual indica buena correspondencia
entre valores observados y predichos para la mayoría de los casos.
Figura 2: Residuos vs. Valores Ajustados.
El gráfico muestra un patrón más homogéneo que en el modelo Poisson,
reduciendo el efecto “abanico” típico de la sobredispersión.
Esto sugiere que el quasi-Poisson corrige la heterogeneidad no
explicada y estabiliza la varianza de los residuos, mejorando
la validez inferencial del modelo.
Figura 3: Efecto de la Satisfacción Marital.
La figura presenta una tendencia descendente clara: los
individuos con mayor satisfacción marital (niveles 4 y 5) muestran
conteos predichos significativamente menores.
Los puntos se concentran entre 0 y 2 affairs para estos grupos, mientras
que los niveles bajos (1 y 2) exhiben mayor dispersión y conteos más
altos.
Esto confirma el efecto protector de la satisfacción
marital, coherente con teorías previas sobre la estabilidad de
las relaciones (Fair, 1978).
Los resultados reflejan patrones sociológicos y psicológicos
realistas.
A mayor religiosidad y satisfacción
marital, menor es la frecuencia estimada de relaciones
extramatrimoniales, mientras que los años de matrimonio
incrementan ligeramente dicha frecuencia, posiblemente debido a la
fatiga relacional o la rutina conyugal (Fair,
1978).
La sobredispersión detectada (\(\phi \approx 6.87\)) sugiere la presencia de factores no observados, como valores personales o circunstancias contextuales, que afectan la variabilidad de las respuestas. El modelo quasi-Poisson permitió ajustar los errores estándar, garantizando inferencias más conservadoras y robustas (Stack Exchange, 2016).
Entre las limitaciones, se destaca el exceso de ceros (≈75%), típico en este tipo de fenómenos. Esto podría abordarse en futuras investigaciones mediante modelos zero-inflated Poisson (ZIP) o hurdle models, que diferencian entre la ocurrencia y la frecuencia del evento. Asimismo, incluir variables como género, nivel educativo o satisfacción sexual podría mejorar el ajuste y la interpretación del modelo.
El análisis evidencia que la regresión de Poisson es
una herramienta valiosa para el estudio de variables de conteo, pero su
validez depende de la verificación del supuesto de
equidispersión.
En el caso del conjunto Affairs, la varianza superó
significativamente a la media, justificando el uso del modelo
quasi-Poisson, que permitió obtener estimaciones más
estables y teóricamente coherentes.
Se concluye que la satisfacción marital y la religiosidad actúan como
factores protectores, mientras que los años de
matrimonio incrementan el riesgo de relaciones extramatrimoniales.
El modelo quasi-Poisson ofrece una base sólida para investigaciones
futuras en ciencias sociales, donde los eventos discretos y raros son
comunes y la sobredispersión es la regla más que la excepción.
Cameron, A. C., & Trivedi, P. K. (2013). Regression analysis
of count data (2nd ed.). Cambridge University Press.
Dataquest. (2019, February 27). Learn to use Poisson regression in
R. https://www.dataquest.io/blog/tutorial-poisson-regression-in-r/
Fair, R. C. (1978). A theory of extramarital affairs.
Journal of Political Economy, 86(1), 45–61. https://doi.org/10.1086/258429
Hilbe, J. M. (2011). Negative binomial regression (2nd ed.).
Cambridge University Press.
OARC Stats. (n.d.). Poisson regression | R data analysis
examples. UCLA Institute for Digital Research and Education. https://stats.oarc.ucla.edu/r/dae/poisson-regression/
Stack Exchange. (2016, March 15). How to deal with overdispersion in
Poisson regression. https://stats.stackexchange.com/questions/201903/how-to-deal-with-overdispersion-in-poisson-regression-quasi-likelihood-negative