CIENCIA DE DATOS APLICADA A SALUD PÚBLICA Y EPIDEMIOLOGÍA (Demostración de la clase de Estadística Aplicada)
- El análisis fue realizado con el objetivo de difundir y democratizar el uso y análisis de datos en México para de esta forma crear una masa crítica que nos permita tomar mejores decisiones en lo colectivo con mejores herramientas y métodos.
Ejercicios incluidos
- En esta actividad se verán 3 ejercicios
- Datos globales de Johns Hopkins University para México
- Datos de coronavirus.gob.mx para Sonora y Sinaloa
- Datos de enfermedades crónicas en Sonora
Importación de paquetes / bibliotecas
Esto permite establecer nuestra carpeta de trabajo y las bibiliotecas necesarias para trabajar en R Markdown
setwd("~/Stat206145") #Directorio de trabajo
library(pacman) #para importar la biblioteca "pacman"
p_load("base64enc", "htmltools", "mime", "xfun", "prettydoc","readr", "knitr","DT","dplyr", "ggplot2","plotly", "gganimate","gifski","scales")Datos globales de Johns Hopkins University para México
Es importante mencionar los datos de donde tomamos las referencias y acontinución lo hacemos.
De lo general a lo particular
Datos obtenidos de:
“Coronavirus COVID-19 Global Cases by the Center for Systems Science and Engineering (CSSE) at Johns Hopkins University (JHU)” https://coronavirus.jhu.edu/map.html
Importar datos de JHU
#se realiza la declaración de las variables que contendrán las url en donde se encuentran los datos crudos de confirmados, decesos, recuperados
url_conf <- "https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv"
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"
url_recuperados <- "https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_recovered_global.csv"
#Leer los archivos .csv de las url
datos_conf <- read.csv(url_conf)
datos_decesos <- read.csv(url_decesos)
datos_recuperados <- read.csv(url_recuperados)
#definir variables
conf_mex <- t(datos_conf[datos_conf$Country.Region=="Mexico" ,])
dec_mex <- t(datos_decesos[datos_decesos$Country.Region=="Mexico" ,])
rec_mex <- t(datos_recuperados[datos_recuperados$Country.Region=="Mexico" ,])Formatear datos
Esto se hace para tener un margen del trabajo que se está realizando, con datos limpios y concisos.
- Eliminar campos no utilizables
- Formatear las fechas
- Crear un marco de datos (data frame)
#vector de fecha
Fecha <- seq(from = as.Date("2020-01-22"), to = as.Date("2020-12-18"), by = "day" )
#casos confirmados
vec1 <- as.vector(conf_mex)
vec2 <- vec1[5:336]
num1 <- as.numeric(vec2)
Confirmados <- as.vector(num1)
#decesos
vec1 <- as.vector(dec_mex)
vec2 <- vec1[5:336]
num1 <- as.numeric(vec2)
Decesos <- as.vector(num1)
#recuperados
vec1 <- as.vector(rec_mex)
vec2 <- vec1[5:336]
num1 <- as.numeric(vec2)
Recuperados <- as.vector(num1)
#generación de un marco de datos (data frame)
datos1 <- data.frame(Fecha, Confirmados, Decesos, Recuperados)Graficación de datos
A continuación se presentan visualizaciones que representan los datos de confirmados, decesos y recuperados para México
Gráfica estática
Este tipo de gráfica muestra una visualización de datos de manera sólida, en una sola imágen.
gcov <- ggplot(data = datos1) +
geom_line(aes(Fecha, Confirmados, colour="Confirmados")) +
geom_line(aes(Fecha, Decesos, colour="Decesos")) +
geom_line(aes(Fecha, Recuperados, colour="Recuperados")) +
xlab("Fecha") +
ylab("COVID-19 en México") +
labs(colour="casos")+
ggtitle("Casos de COVID-19 en México (Fuente: JHU CSSE") +
scale_y_continuous(labels = comma)
gcovGráfica interactiva
Por el contrario de la gráfica anterior, en la gráfica interactiva podemos visualizar de mejor manera lo que está sucediendo, ya que nos permite interactuar sobre ella, mostrándonos datos específicos según donde localicemos nuestro puntero.
Esto es usando el paquete “plotly”
ggplotly(gcov)Gráfica animada
En esta gráfica podemos ver el comportamiento de los datos a manera de “gift”.
ggplot(data = datos1) +
geom_line(aes(Fecha, Confirmados, colour="Confirmados")) +
geom_line(aes(Fecha, Decesos, colour="Decesos")) +
geom_line(aes(Fecha, Recuperados, colour="Recuperados")) +
xlab("Fecha") +
ylab("COVID-19 en México") +
labs(colour="casos")+
ggtitle("Casos de COVID-19 en México (Fuente: JHU CSSE") +
scale_y_continuous(labels = comma) +
transition_reveal(Fecha)Datos de enfermedades crónicas en Sonora
Fuente de los datos Obtenida de: https://datos.gob.mx/busca/dataset/expediente-clinico-electronico-unemes-enfermedades-cronicas--2018
URL de datos CSV crudos: http://www.cenaprece.salud.gob.mx/descargas/Excel/Diagnosticos18.csv
Expediente Clínico Electrónico UNEMES (unidades de especialidades médicas) Enfermedades Crónicas 2018
- El Centro Nacional de Programas Preventivos y Control de Enfermedades (CENAPRECE), es el órgano desconcentrado de la Secretaría de Salud responsable de conducir e implementar los programas sustantivos para la prevención y control de enfermedades, para reducir la morbilidad y mortalidad en la población mexicana.
Importar datos
Lo que se realiza a continuación es una importación de los datos previamente descargados en formato de archivo csv.
datos2 <- read.csv("Diagnosticos18.csv", encoding= "latin1")
class(datos2)## [1] "data.frame"
head(datos2)## Estado Jurisdiccion Uneme CLUES Cve.Persona Genero
## 1 Guanajuato IRAPUATO UNEME EC IRAPUATO GTSSA017250 GuIRUN5910 Mujer
## 2 Guanajuato IRAPUATO UNEME EC IRAPUATO GTSSA017250 GuIRUN5953 Mujer
## 3 Guanajuato IRAPUATO UNEME EC IRAPUATO GTSSA017250 GuIRUN6045 Mujer
## 4 Guanajuato IRAPUATO UNEME EC IRAPUATO GTSSA017250 GuIRUN6091 Mujer
## 5 Guanajuato IRAPUATO UNEME EC IRAPUATO GTSSA017250 GuIRUN6138 Mujer
## 6 Guanajuato IRAPUATO UNEME EC IRAPUATO GTSSA017250 GuIRUN5706 Hombre
## Cve.Diagnóstico Diagnostico Fecha.Diagnótico
## 1 E78.2 Dislipidemias 02/01/2018
## 2 E78.2 Dislipidemias 02/01/2018
## 3 E78.2 Dislipidemias 02/01/2018
## 4 E78.2 Dislipidemias 02/01/2018
## 5 E78.2 Dislipidemias 02/01/2018
## 6 E78.2 Dislipidemias 02/01/2018
Formateo de datos
SonoraS <- t(datos2[datos2$Estado == "Sonora", ])
SonoraS <- (datos2[datos2$Estado == "Sonora", ])Graficación
Este tipo de gráfico, secciona y agrupa los datos de manera que se noten los grupos vulnerables de sonora.
#Gráfico agrupado
ggplot(SonoraS, aes(fill=Jurisdiccion, y=Diagnostico)) +
geom_bar(position="dodge", stat="count") +
xlab ("Número de casos") +
ylab ("Diagnóstico") +
ggtitle(" Enfermedades crónicas en Sonora, 2018 (CENAPRECE)") Tabla interactiva de datos
En esta tabla podremos desde cambiar el prden de organización hasta omitir columnas que no nos interese ver, de una manera interactiva.
datatable(datos2)## Warning in instance$preRenderHook(instance): It seems your data is too big
## for client-side DataTables. You may consider server-side processing: https://
## rstudio.github.io/DT/server.html