Análisis de la serie temporal de los decesos por COVID 19 en México

Equipo 5: Paulina Cortez, Andrea Salazar , Jaime Valenzuela, Dianey Velasquez

10/15/2021

I. Introducción

En los últimos 2 años el mundo se ha visto envuelto en una carrera para disminuir los contagios de COVID-19, un virus responsable de la muerte de millones de personas. En México se han presentado al menos 3.74 millones de personas contagiadas, y las muertes han alcanzado una cifra mayor a 280 mil personas, sin mencionar a quienes no fueron diagnosticados.

De ahí la importancia de conocer la situación, ¿Como es que las personas se contagian?, ¿Existe alguna razón para los repentinos picos de contagio?, ¿Hay algún tipo de patrón o ciclo? Nuestra intención es contestar esta y más incógnitas. Para ello en este documento se desarrollará una investigación y análisis sobre los casos de COVID-19 en México. Se establecerá una secuencia de tiempo mediante la cual se analizará la ciclicidad de los datos, la tendencia, estacionalidad, y otras variables con el propósito de entender el comportamiento de los datos, y así arrojar algo de luz sobre la situación actual.

II. Antecedentes

El virus COVID-19 fue reportado por primera vez el martes 7 de enero de 2020, por CDC de China (Centro para el Control y la Prevención de Enfermedades), luego de que el 31 de diciembre de 2019 la Organización Mundial de la Salud (OMS) recibiera reportes de 27 casos de un tipo de neumonía, de origen desconocido, siente de los cuales eran severos, en la ciudad de Wuhan, en China.

El vínculo común de todos estos casos, es que se trataba de personas con algpun tipo de relación con el Mercado de Huanan en Wuhan, en el cual se vende al mayoreo pescados, mariscos y animales vivos. La autoridades sanitarias del luegar, tomaron muestras en el mencionado mercado y el 1 de enero fue cerrado al público, ya que las mismas dieron positivas para el nuevo virus.

En México, el primer caso de COVID-19 se detectó el 27 de febrero de 2020. El 30 de abril, 64 días después de este primer diagnóstico, el número de pacientes aumentó exponencialmente, alcanzando un total de 19,224 casos confirmados y 1,859 fallecidos.

La mayoría de casos, se ubicaron en la Ciudad de México, donde la edad promedio fue de 46 años.

III. Teoria

¿Qué fue lo qué causo la pandemia en las personas mexicanas y como esto se vio reflejado el twitter?

Ansiedad en pandemia

Vivimos en una rutina constante de ir y venir, de mantenernos ocupados en el trabajo, con las amistades, en el deporte, juegos, cine, comidas o convivios en restaurantes, etc.. En todas y cada una de las actividades que tenemos día a día y la mayoría de ellas, por no decir todas, son en contacto con el exterior, lo que nos lleva a vivir en un mundo externo a nosotros mismos, lleno de prisas, a la corre y corre, a tal grado que no tenemos tiempo o no deseamos detenernos a reflexionar en lo que se piensa o se siente realmente, en esos momentos.

Dicho de otra manera, llenamos nuestros tiempos y espacios con actividades y no nos damos tiempo para nosotros mismos, para hacer contacto con nuestro ser interior. Y cuando llega este momento de recogimiento, de limitación al afuera, se ha visto que muy frecuentemente, asusta o da miedo el solo hecho de pensar que no se saldrá de casa, que no se podrá hacer todo lo que hacía con anterioridad. Es en ese momento cuando uno se detiene a revisar lo que piensa, siente o recuerda de su vida. Al menos eso es lo que la mayoría de los pacientes en consulta reportan y que lo expresan como:

  • Sentimiento de soledad
  • Tener miedo primero a la situación sanitaria y posteriormente a enfermarse, y esto se agrava si algún familiar o amigo pasa por esta situación o incluso fallece por este virus.
  • Dando pie a un recuento del pasado. A recordar errores cometidos en el transcurso de la vida, que se hizo, que no hizo, que me hicieron otros y que he superado y que no, en sí, todo lo bueno, en menor proporción, y lo malo, en demasía, con mi familia, amigos, conmigo mismo (a).
  • Hasta llegar a estar frente a frente consigo mismos, pero ¿Cómo lo hago? Si nunca antes lo había hecho por estar enfrascado en tanta actividad, comentan algunos pacientes.

*Agotamiento mental

Ante la mezcla de la vida personal y la laboral durante el confinamiento, las especialistas mencionan que ha incrementado el sentimiento de agotamiento mental, también conocido como “burnout”. El trabajo excesivo, los horarios, todo se combinó; la noche, la mañana, ¿a qué hora empieza mi trabajo y mis labores de casa? Esto ha tenido efectos hasta biológicos en el cuerpo como el insomnio o el sedentarismo.

VI. Resultados y discusión

Importar paquetes/librerias

## Se importan paquetes y librerias.
library(pacman)
p_load("DT","xfun","ggplot2", "readr","tseries","ggfortify","tidyr", "dplyr","markdown","knitr","tidyverse","lubridate","summarytools","ggpubr","kableExtra","reshape2","gridExtra",
       "sf","tmap","devtools","Rcpp","gganimate","gifski","Hmisc","corrplot","GGally")
## Installing package into 'C:/Users/PC/Documents/R/win-library/4.1'
## (as 'lib' is unspecified)
## Warning: unable to access index for repository http://www.stats.ox.ac.uk/pub/RWin/bin/windows/contrib/4.1:
##   no fue posible abrir la URL 'http://www.stats.ox.ac.uk/pub/RWin/bin/windows/contrib/4.1/PACKAGES'
## package 'tmap' successfully unpacked and MD5 sums checked
## 
## The downloaded binary packages are in
##  C:\Users\PC\AppData\Local\Temp\RtmpqwJtqU\downloaded_packages
## 
## tmap installed
## Warning: package 'tmap' was built under R version 4.1.3
## Warning: S3 methods '$<-.stars', '[.dimension', '[.dimensions',
## '[.intervals_list', '[.stars', '[.stars_proxy', '[<-.dimensions', '[<-.stars',
## '[<-.stars_proxy', '[[<-.stars', '[[<-.stars_proxy', 'dimnames<-.stars',
## 'st_crs<-.dimensions', 'st_crs<-.stars', 'st_dimensions<-.list',
## 'st_dimensions<-.stars', 'st_dimensions<-.stars_proxy', 'Math.stars',
## 'Math.stars_proxy', 'Ops.stars', 'Ops.stars_proxy', 'adrop.stars',
## 'adrop.stars_proxy', 'aggregate.stars', 'aggregate.stars_proxy', 'aperm.stars',
## 'aperm.stars_proxy', 'as.data.frame.dimensions', 'as.data.frame.stars',
## 'as.data.frame.stars_proxy', 'as.list.intervals', 'c.stars', 'c.stars_proxy',
## 'contour.stars', 'cut.array', 'cut.matrix', 'cut.stars', 'dim.dimensions',
## 'dim.stars', 'dim.stars_proxy', 'dimnames.stars', 'drop_units.stars',
## 'droplevels.stars', 'droplevels.stars_proxy', 'format.intervals',
## 'format.intervals_list', 'hist.stars', 'hist.stars_proxy', 'image.stars',
## 'is.na.stars', 'is.na.stars_proxy', 'merge.stars', 'merge.stars_proxy',
## 'plot.stars', 'plot.stars_proxy', 'predict.stars', 'predict.stars_proxy',
## 'print.dimensions', 'print.stars', 'print.stars_proxy', 'print.stars_raster',
## 'seq.dimension', 'split.stars', 'split.stars_proxy', 'st_apply.stars',
## 'st_apply.stars_proxy', 'st_area.stars', 'st_as_sf.stars',
## 'st_as_sf.stars_proxy', 'st_as_sfc.stars', 'st_as_stars.OpenStreetMap',
## 'st_as_stars.Raster', 'st_as_stars.STFDF', 'st_as_stars.STSDF',
## 'st_as_stars.SpatRaster', 'st_as_stars.Spatial', 'st_as_stars.bbox',
## 'st_as_stars.data.frame', 'st_as_stars.default', 'st_as_stars.im',
## 'st_as_stars.list', 'st_as_stars.ncdfgeom', 'st_as_stars.sf',
## 'st_as_stars.sfc', 'st_as_stars.stars', 'st_as_stars.stars_proxy',
## 'st_as_stars.xts', 'st_bbox.default', 'st_bbox.dimensions',
## 'st_bbox.stars', 'st_coordinates.dimensions', 'st_coordinates.stars',
## 'st_crop.stars', 'st_crop.stars_proxy', 'st_crs.dimensions', 'st_crs.stars',
## 'st_dimensions.array', 'st_dimensions.default', 'st_dimensions.dimensions',
## 'st_dimensions.matrix', 'st_dimensions.stars', 'st_downsample.stars',
## 'st_downsample.stars_proxy', 'st_extract.stars', 'st_geometry.stars',
## 'st_interpolate_aw.stars', 'st_intersects.stars', 'st_join.stars',
## 'st_mosaic.character', 'st_mosaic.stars', 'st_mosaic.stars_proxy',
## 'st_normalize.stars', 'st_redimension.stars', 'st_redimension.stars_proxy',
## 'st_sample.stars', 'st_sample.stars_proxy', 'st_set_bbox.dimensions',
## 'st_set_bbox.stars', 'st_set_bbox.stars_proxy', 'st_transform.stars',
## 'st_transform_proj.stars', 'write_stars.stars', 'write_stars.stars_proxy' were
## declared in NAMESPACE but not found
## Warning in p_load("DT", "xfun", "ggplot2", "readr", "tseries", "ggfortify", : Failed to install/load:
## tmap

Datos

url_decesos <- "https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv"


#Leer los archivos .csv de las url 

datos_decesos <- read.csv(url_decesos)
twitter_diaria <- read_csv("twitter_diaria.csv")
## Rows: 2255 Columns: 7
## -- Column specification --------------------------------------------------------
## Delimiter: ","
## chr  (2): tipo_usuario, lugar
## dbl  (4): tuits_negativos, indice, recoleccion_promedio, tuits_positivos
## date (1): fecha
## 
## i Use `spec()` to retrieve the full column specification for this data.
## i Specify the column types or set `show_col_types = FALSE` to quiet this message.
datosTwitter <- data.frame(twitter_diaria)
movilidad <- read.csv("movilidad_mexico_2020.csv")

#definir variables 

dec_mex  <- t(datos_decesos[datos_decesos$Country.Region=="Mexico" ,])
twt_neg  <- twitter_diaria[1482:1826 ,c(2)]
Residencia  <- movilidad[1:345 , c(15) ]

Fecha=seq(from = as.Date("2020-01-22"),to = as.Date("2020-12-31"),by = "day")

Series de tiempo

  • Antes de empezar la pandemia
twittsST <- ts(datosTwitter[ ,c(2,7)],start = c(2016,1),end = c(2020,1),frequency = 12)
autoplot(twittsST, ts.colour = "blue",ts.linetype = "dotted")

  • Después del inicio de la pandemia
twittsST <- ts(datosTwitter[ ,c(2,7)],start = c(2020,3),end = c(2022,1),frequency = 12)
autoplot(twittsST, ts.colour = "blue",ts.linetype = "dotted")

El anterior gráfico representa una serie de tiempo, la cual indica el comportamiento de los tweets positivos y negativos a lo largo de los años. Aquí podemos observar el contraste de manera más gráfica de los tweets negativos y positivos, desde el año 2016, hasta el presente. Se puede observar que cuando inició la pandemia hubo una ola muy notoria de twits negativos, esto porque en su mayoria, las personas tenían el temor se enfermarse y empezaron a padecer transtornos psicológicos por el encierro.

  • Gráfica de caja y bigote después del inicio de la pandemia
twittsNegativosST <- ts(datosTwitter$tuits_negativos,start = c(2020,3),end = c(2022,1),frequency = 12)

boxplot(twittsNegativosST~cycle(twittsNegativosST))

Se observa que los datos si varían mucho, pero se alcanza a notar el incremento que hubo después de que se oficializara el comienzo de la nueva pandemia.

# tweets negativos
Tweets_negativos <- unlist(twt_neg)

#decesos 
vec1 <- as.vector(dec_mex)
vec2 <- vec1[5:349]
num1 <- as.numeric(vec2)
Decesos <- as.vector(num1)

for(i in 1:345){
  Residencia[i] <- Residencia[i]*10
}
Residencia <- accumulate(Residencia[1:345],`+`)
#generación de un marco de datos (data frame)

datosPandemia <- data.frame(Fecha, Tweets_negativos, Decesos, Residencia)

Se grafican los datos

A continuación se presentan los datos de tweets negativos, decesos y movilidad durente la pandemia en una gráfica

Gráfica estática

gcov <- ggplot(data = datosPandemia) +
  geom_line(aes(Fecha, Tweets_negativos, colour="Tweets negativos")) +
  geom_line(aes(Fecha, Decesos, colour="Decesos")) +
  geom_line(aes(Fecha, Residencia, colour="Residencia")) +
  xlab("Fecha") +
  ylab("Pandemia COVID-19 en México") +
  labs(colour="Variables")+
  ggtitle("Relación entre tweets negativos, recidencia y decesos por Covid-19")
gcov

En este gráfico se pueden observar las tendencias de crecimiento de los datos de decesos, residencia y tweets negativos durante el año 2020 hasta el inicio del año 2021. A simple vista no se observa una relación entre las tres variables puesto que el crecimiento de los decesos aumento y el de los tweets negativos disminuyó un poco.

Gráfica animada

ggplot(data = datosPandemia) +
  geom_line(aes(Fecha,  Tweets_negativos, colour="Tweets negativos")) +
  geom_line(aes(Fecha, Decesos, colour="Decesos")) +
  geom_line(aes(Fecha, Residencia, colour="Residencia")) +
  xlab("Fecha") +
  ylab("COVID-19 en México") +
  labs(colour="Variables")+
  ggtitle("Casos de COVID-19 en México (Fuente: JHU CSSE") +
  transition_reveal(Fecha)

En este gráfico se muestran poco a poco las tendencias de crecimiento de los decesos por covid confirmados. Esta gráfica es la misma que la anterior, la única diferencia es que al ser esta interactiva, se muestra como fue el crecimiento.

Correlación

ggpairs(datosPandemia[, c(2,3,4)], lower = list(continuous ="smooth"),
        diag = list (continuos = "barDiag"), axisLabels = "none")

> La siguiente gráfica representa la correlación entre las tres variables, esta correlación mide la relación entre variables continuas. El gráfico presenta la representación de los datos, la correlación y la representación gráfica de esa correlación. Se observa como los los tweets negativos tiene una correlación negativa con decesos y residencia, -0.787 y -0.759 respectivamente. Esto indica que, mientras una variable aumenta, las otras disminuyen. Esto puede ser, por el humor que abunda en Twitter, que durante sucesos importantes, la red social se llena de chistes y memes. Además de la correlación, se puede observar la graficación de esta, la cual es linal. Por otro lado, decesos y residencia están muy correlacionados, con un .943, esto debido a que, cuando los decesos por covid-19 aumentaban, el pánico de la sociedad también, lo que provocaba que las medidas de prevención, tal como quedarse en casa, fueran realizadas por un gran número de personas.

Matriz de correlación entre las variables predictoras

corrplot(cor(dplyr::select(datosPandemia,Decesos,Tweets_negativos,
                          Residencia)), 
        method = "number", tl.col = "black")

En esta gráfica de correlaciones se puede observar que tweets negatigos y decesos tienen una correlación negativa, es decir, mientras los decesos suben, los tweets negativos bajan y en cierta manera es verdad, porque nuestro equipo buscó en twitter los tweets relacionados a la pandemia o al covid y en su mayoría son memes o información por parte del gobierno. Citando una noticia del 27 de Julio del 2020 “Los hombres están siendo más afectados que las mujeres por coronavirus y también las clases bajas respecto a las acomodadas, pero el colectivo que más muertos ha puesto en esta batalla en México es el de las amas de casa, con 9.192 defunciones en lo que va de pandemia. Le sigue el grupo de jubilados y pensionados, con 3.738, una parte de los cuales también son mujeres al cuidado del hogar.”. Tomando en cuenta esto, se puede ver que la residencia tiene mucha correlación positiva con los decesos y esto se debe a que en su mayoría, los decesos fueron de personas mayores, es decir, personas que ya no necesitaban realizar alguna actividad fuera de su casa, sin embargo, al ser el grupo más vulnerable ante la situación, sus muertes si son las que más se contabilizan.

Memes sobre el covid Informacion sobre el covid

Conclusión

Después de este análisis se puede concluir parcialmente que los decesos por covid no tienen tanta relación con los tweets negativos porque en la mayoría de los tweets, lo que las personas buscaban era hacer burla sobre la situación y de esta manera aligerar las cosas. Sin embargo y como ya se mencionó antes los decesos si tienen correlación con residencia porque las personas más vulnerables a los decesos son las personas mayores, es decir, jubilados y pensionados, por lo tanto no necesitaban salir de su hogar en muchas ocaciones.

Conclusión personal

La baja de tweets negativos a la vez que aumentan los decesos nos muestran que puede que la población se haya cansado de entrar a la red social, esto por las abrumadoras noticias que constantemente se compartían. Asi mismo, que la residencia aumente puede significar que al oir noticias de fallecimientos por la enfermedad, las personas por temor quisieran evitar el contagio quedandose en sus casas, o incluso por restricción de las autoridades.

Para descargar los datos de los casos de covid por día

xfun::embed_file("twitter_diaria.csv")

Download twitter_diaria.csv

xfun::embed_file("movilidad_mexico_2020.csv")

Download movilidad_mexico_2020.csv

  • Para descarga el código de este proyecto
xfun::embed_file("A9U1.Rmd")

Download A9U1.Rmd