La pandemia de COVID-19 ha generado un impacto global sin precedentes, y la comprensión de los factores que influyen en la propagación del virus se ha convertido en un tema crítico de investigación. En este estudio, exploramos dos enfoques de modelado estadístico para analizar la evolución de los casos de COVID-19 durante un período de 15 días. Utilizamos datos que incluyen información sobre el número de casos diarios de contagio, así como variables relacionadas con la cantidad de miembros en los hogares, mascotas, así como la cantidad promedio de integrantes que han recibido al menos una dosis de la vacuna contra la COVID-19.
En particular, empleamos dos enfoques de regresión de Poisson para
entender mejor la relación entre estas variables explicativas (día,
miembros de hogar, animales y miembros vacunados) y la variable
predictora clave: los casos diarios de COVID-19. Estos enfoques son el
modelo de regresión de Poisson clásica y el modelo de regresión de
Poisson bayesiana.
PASOS PARA DESARROLLO DE A Y B: - Cargar las librerias - Cargar la base de datos - Ajusta el modelo de regresión de Poisson - Obtén un resumen de los resultados del modelo - Evaluación de supuestos - Examina la sobredispersión o subdispersión
## Loading required package: car
## Loading required package: carData
## Loading required package: lmtest
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Loading required package: sandwich
## Loading required package: survival
datos <- read.table("CASOSCOVID.txt", header = T, sep = "\t")
attach(datos)
# Ajusta el modelo de regresión de Poisson
modelo_poisson <- glm(CASOS ~ MIEMBROS_HOGAR + ANIMALES + INTEGRANTES_VACUNADOS, data = datos, family = "poisson")
# Obtén un resumen de los resultados del modelo
summary(modelo_poisson)##
## Call:
## glm(formula = CASOS ~ MIEMBROS_HOGAR + ANIMALES + INTEGRANTES_VACUNADOS,
## family = "poisson", data = datos)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 4.38811 0.07439 58.987 < 2e-16 ***
## MIEMBROS_HOGAR 0.10212 0.01716 5.952 2.64e-09 ***
## ANIMALES 0.06324 0.01996 3.168 0.00153 **
## INTEGRANTES_VACUNADOS -0.01646 0.02983 -0.552 0.58104
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 178.912 on 14 degrees of freedom
## Residual deviance: 83.578 on 11 degrees of freedom
## AIC: 193.62
##
## Number of Fisher Scoring iterations: 4
#Evaluación de supuestos
# Verifica la bondad de ajuste del modelo
#Bondad de ajuste del modelo
plot(modelo_poisson, which = 1)#Examina la sobredispersión o subdispersión:
dispersion_test <- dispersiontest(modelo_poisson)
dispersion_test##
## Overdispersion test
##
## data: modelo_poisson
## z = 2.9092, p-value = 0.001812
## alternative hypothesis: true dispersion is greater than 1
## sample estimates:
## dispersion
## 5.409008
INTERPRETACIÓN
*** Con respecto a los valores estimados se puede comentar lo siguiente :
** El intercepto es el valor esperado de la variable de posición cuando todas las variables independientes son iguales a cero. En este caso, el intercepto es 4.38811 y es muy significativo, lo que indica que el modelo tiene un valor base alto.
** Para cada unidad adicional en la variable MIEMBROS_HOGAR, se espera un aumento del 10.21% en el número de casos de COVID, manteniendo todas las demás variables constantes. Esto sugiere que el tamaño del hogar está relacionado positivamente con los casos de COVID, y este efecto es muy significativo.
** Cada unidad adicional en la variable ANIMALES se asocia con un aumento del 6.32% en el número esperado de casos de COVID, manteniendo todas las demás variables constantes. Este efecto es significativo, aunque menos que la variable MIEMBROS_HOGAR.
**Cada unidad adicional en la variable INTEGRANTE VACUNADOS se asocia con un descenso en el número esperado de casos de COVID. Este efecto es POCO significativo, ya que su valor p es alto (0.58104).
**En este caso la desviación residual (83.578) es más pequeña en comparación con la desviación nula (178.912) ,esto indica que el modelo con las variables independientes mejora la predicción de los casos de COVID en comparación con un modelo sin variables independientes.
PASOS PARA DESARROLLO DE c , D Y E: - Cargar las librerias - Cargar la base de datos - Especifica el modelo Poisson bayesiano (Utiliza la función brm() para ajustar el modelo) - Obtén un resumen de los resultados del modelo - Predicciones - Muestra las predicciones
## Loading required package: Rcpp
## Loading 'brms' package (version 2.20.3). Useful instructions
## can be found by typing help('brms'). A more detailed introduction
## to the package is available through vignette('brms_overview').
##
## Attaching package: 'brms'
## The following object is masked from 'package:survival':
##
## kidney
## The following object is masked from 'package:stats':
##
## ar
## The following objects are masked from datos (pos = 5):
##
## ANIMALES, CASOS, DIA, INTEGRANTES_VACUNADOS, MIEMBROS_HOGAR
# Supongamos que tienes un conjunto de datos con una variable dependiente 'y'
# y variables independientes 'x1', 'x2', ... 'xn'.
# Especifica el modelo Poisson bayesiano
# Utiliza la función brm() para ajustar el modelo
model <- brm(CASOS ~ MIEMBROS_HOGAR + ANIMALES + INTEGRANTES_VACUNADOS, family = poisson(), data = datos)## Compiling Stan program...
## Start sampling
##
## SAMPLING FOR MODEL 'anon_model' NOW (CHAIN 1).
## Chain 1:
## Chain 1: Gradient evaluation took 2.7e-05 seconds
## Chain 1: 1000 transitions using 10 leapfrog steps per transition would take 0.27 seconds.
## Chain 1: Adjust your expectations accordingly!
## Chain 1:
## Chain 1:
## Chain 1: Iteration: 1 / 2000 [ 0%] (Warmup)
## Chain 1: Iteration: 200 / 2000 [ 10%] (Warmup)
## Chain 1: Iteration: 400 / 2000 [ 20%] (Warmup)
## Chain 1: Iteration: 600 / 2000 [ 30%] (Warmup)
## Chain 1: Iteration: 800 / 2000 [ 40%] (Warmup)
## Chain 1: Iteration: 1000 / 2000 [ 50%] (Warmup)
## Chain 1: Iteration: 1001 / 2000 [ 50%] (Sampling)
## Chain 1: Iteration: 1200 / 2000 [ 60%] (Sampling)
## Chain 1: Iteration: 1400 / 2000 [ 70%] (Sampling)
## Chain 1: Iteration: 1600 / 2000 [ 80%] (Sampling)
## Chain 1: Iteration: 1800 / 2000 [ 90%] (Sampling)
## Chain 1: Iteration: 2000 / 2000 [100%] (Sampling)
## Chain 1:
## Chain 1: Elapsed Time: 0.043 seconds (Warm-up)
## Chain 1: 0.052 seconds (Sampling)
## Chain 1: 0.095 seconds (Total)
## Chain 1:
##
## SAMPLING FOR MODEL 'anon_model' NOW (CHAIN 2).
## Chain 2:
## Chain 2: Gradient evaluation took 8e-06 seconds
## Chain 2: 1000 transitions using 10 leapfrog steps per transition would take 0.08 seconds.
## Chain 2: Adjust your expectations accordingly!
## Chain 2:
## Chain 2:
## Chain 2: Iteration: 1 / 2000 [ 0%] (Warmup)
## Chain 2: Iteration: 200 / 2000 [ 10%] (Warmup)
## Chain 2: Iteration: 400 / 2000 [ 20%] (Warmup)
## Chain 2: Iteration: 600 / 2000 [ 30%] (Warmup)
## Chain 2: Iteration: 800 / 2000 [ 40%] (Warmup)
## Chain 2: Iteration: 1000 / 2000 [ 50%] (Warmup)
## Chain 2: Iteration: 1001 / 2000 [ 50%] (Sampling)
## Chain 2: Iteration: 1200 / 2000 [ 60%] (Sampling)
## Chain 2: Iteration: 1400 / 2000 [ 70%] (Sampling)
## Chain 2: Iteration: 1600 / 2000 [ 80%] (Sampling)
## Chain 2: Iteration: 1800 / 2000 [ 90%] (Sampling)
## Chain 2: Iteration: 2000 / 2000 [100%] (Sampling)
## Chain 2:
## Chain 2: Elapsed Time: 0.043 seconds (Warm-up)
## Chain 2: 0.048 seconds (Sampling)
## Chain 2: 0.091 seconds (Total)
## Chain 2:
##
## SAMPLING FOR MODEL 'anon_model' NOW (CHAIN 3).
## Chain 3:
## Chain 3: Gradient evaluation took 8e-06 seconds
## Chain 3: 1000 transitions using 10 leapfrog steps per transition would take 0.08 seconds.
## Chain 3: Adjust your expectations accordingly!
## Chain 3:
## Chain 3:
## Chain 3: Iteration: 1 / 2000 [ 0%] (Warmup)
## Chain 3: Iteration: 200 / 2000 [ 10%] (Warmup)
## Chain 3: Iteration: 400 / 2000 [ 20%] (Warmup)
## Chain 3: Iteration: 600 / 2000 [ 30%] (Warmup)
## Chain 3: Iteration: 800 / 2000 [ 40%] (Warmup)
## Chain 3: Iteration: 1000 / 2000 [ 50%] (Warmup)
## Chain 3: Iteration: 1001 / 2000 [ 50%] (Sampling)
## Chain 3: Iteration: 1200 / 2000 [ 60%] (Sampling)
## Chain 3: Iteration: 1400 / 2000 [ 70%] (Sampling)
## Chain 3: Iteration: 1600 / 2000 [ 80%] (Sampling)
## Chain 3: Iteration: 1800 / 2000 [ 90%] (Sampling)
## Chain 3: Iteration: 2000 / 2000 [100%] (Sampling)
## Chain 3:
## Chain 3: Elapsed Time: 0.043 seconds (Warm-up)
## Chain 3: 0.049 seconds (Sampling)
## Chain 3: 0.092 seconds (Total)
## Chain 3:
##
## SAMPLING FOR MODEL 'anon_model' NOW (CHAIN 4).
## Chain 4:
## Chain 4: Gradient evaluation took 8e-06 seconds
## Chain 4: 1000 transitions using 10 leapfrog steps per transition would take 0.08 seconds.
## Chain 4: Adjust your expectations accordingly!
## Chain 4:
## Chain 4:
## Chain 4: Iteration: 1 / 2000 [ 0%] (Warmup)
## Chain 4: Iteration: 200 / 2000 [ 10%] (Warmup)
## Chain 4: Iteration: 400 / 2000 [ 20%] (Warmup)
## Chain 4: Iteration: 600 / 2000 [ 30%] (Warmup)
## Chain 4: Iteration: 800 / 2000 [ 40%] (Warmup)
## Chain 4: Iteration: 1000 / 2000 [ 50%] (Warmup)
## Chain 4: Iteration: 1001 / 2000 [ 50%] (Sampling)
## Chain 4: Iteration: 1200 / 2000 [ 60%] (Sampling)
## Chain 4: Iteration: 1400 / 2000 [ 70%] (Sampling)
## Chain 4: Iteration: 1600 / 2000 [ 80%] (Sampling)
## Chain 4: Iteration: 1800 / 2000 [ 90%] (Sampling)
## Chain 4: Iteration: 2000 / 2000 [100%] (Sampling)
## Chain 4:
## Chain 4: Elapsed Time: 0.042 seconds (Warm-up)
## Chain 4: 0.05 seconds (Sampling)
## Chain 4: 0.092 seconds (Total)
## Chain 4:
## Family: poisson
## Links: mu = log
## Formula: CASOS ~ MIEMBROS_HOGAR + ANIMALES + INTEGRANTES_VACUNADOS
## Data: datos (Number of observations: 15)
## Draws: 4 chains, each with iter = 2000; warmup = 1000; thin = 1;
## total post-warmup draws = 4000
##
## Population-Level Effects:
## Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
## Intercept 4.39 0.08 4.24 4.53 1.00 2815
## MIEMBROS_HOGAR 0.10 0.02 0.07 0.13 1.00 1737
## ANIMALES 0.06 0.02 0.02 0.10 1.00 2527
## INTEGRANTES_VACUNADOS -0.02 0.03 -0.07 0.04 1.00 1646
## Tail_ESS
## Intercept 2864
## MIEMBROS_HOGAR 2280
## ANIMALES 2326
## INTEGRANTES_VACUNADOS 2342
##
## Draws were sampled using sampling(NUTS). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).
# Predicciones
new_data <- data.frame(MIEMBROS_HOGAR =10,ANIMALES=3,INTEGRANTES_VACUNADOS=6)
predictions <- predict(model, newdata = new_data, summary = TRUE)
# Muestra las predicciones
print(predictions)## Estimate Est.Error Q2.5 Q97.5
## [1,] 245.1587 21.93378 204 291
INTERPRETACIÓN
*** Con respecto a los valores estimados se puede comentar lo siguiente :
** El valor estimado del intercepto es 4.39, con un intervalo de confianza del 95% entre 4.25 y 4.53. Esto representa el valor estimado de “CASOS COVID” cuando todas las variables predictoras son iguales a cero.
** El coeficiente estimado para “MIEMBROS_HOGAR” es 0.10, con un intervalo de confianza del 95% entre 0.07 y 0.13. Esto indica que un aumento de una unidad en “MIEMBROS_HOGAR” se asocia con un aumento estimado de 0.10 en la variable “CASOS COVID”, manteniendo las otras variables constantes.
** El coeficiente estimado para “ANIMALES” es 0.06, con un intervalo de confianza del 95% entre 0.02 y 0.10. Esto indica que un aumento de una unidad en “ANIMALES” se asocia con un aumento estimado de 0.06 en la variable “CASOS COVID”, manteniendo las otras variables constantes.
** El coeficiente estimado para “INTEGRANTES_VACUNADOS” es -0.02, con un intervalo de confianza del 95% entre -0.08 y 0.04. Esto indica que un aumento de una unidad en “INTEGRANTES_VACUNADOS” se asocia con una disminución estimada de 0.02 en la variable “CASOS”, manteniendo las otras variables constantes.
** Para el apartado E , el modelo estadístico ha estimado que el número de casos de COVID en un día es de alrededor de 244.8822, con un intervalo de confianza del 95% que va desde 203 a 289.
Ambos enfoques, la distribución Poisson clásica y la distribución Poisson bayesiana, proporcionan información importante sobre la relación entre las variables predictoras y los casos de COVID. Ambos modelos sugieren que un mayor número de miembros en el hogar y la presencia de animales están relacionados positivamente con un aumento en los casos de COVID, mientras que un mayor número de integrantes vacunados está asociado con una disminución en los casos.