Asignación sobre el taller de ciencia de datos aplicado a salud pública y epidemiología

Acerca de esta asignación

Esta asignación fue creada con el fin de aprender sobre como hacer un documento en donde se muestre de forma demostrativa el uso de datos oficiales sobre el COVID-19 en México

Asignación sobre el taller en cual se busca introducir al público al tema del análisis de las métricas de salud pública sobre COVID-19 con el uso de datos oficiales.

  • Abarcaremos 3 ejercicios.
  1. Datos globales de JHU para México.
  2. Datos coronavirus.gob.mx para Sonora y Sinaloa.
  3. Datos de enfermedades crónicas de Sonora.

Importar bibliotecas

setwd("~/TALLEREST") #Directorio de trabajo
library(pacman)
p_load("base64enc","htmltools","mime","xfun","prettydoc","readr","knitr","DT","dplyr","ggplot2","plotly","gganimate","gifski","scales")

Descargar este código

Esto con la finalidad de reproducibilidad se incluye todo el código para su descarga

xfun::embed_file("u1a5.Rmd")

Download u1a5.Rmd

Datos globales de JHU para México.

Esto se hace desde lo general hacia lo global

Importar datos de JHU

#Forma de realizar la acumulación las varibales que contendran las URL en  donde se encuentran los dat0so crudos de confirmados, muertes y 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

  • 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)

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

#Casos 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 presentara visualizaciones que representan los datos confirmados, decesos y recuperados para México

Gráfica estática

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") +
  ggtitle("Casos de COVID-19 en México (Fuente: JHU CSSE)") +
  scale_y_continuous(labels = comma)
gcov

### Gráfica interactiva

Esto se hace usando el paquete “plotly”

ggplotly(gcov)

Gráfica animada

Utilizaremos el siguiene comando

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") +
  ggtitle("Casos de COVID-19 en México (Fuente: JHU CSSE") +
  scale_y_continuous(labels = comma) +
  transition_reveal(Fecha)

  1. Datos de enfermedades crónicas de Sinaloa.

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

datos2 <- read.csv("Diagnosticos18.csv", encoding="latin 1")
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.Diagnostico   Diagnostico Fecha.Diagnostico
## 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

SinaloaS <- t(datos2[datos2$Estado == "Sinaloa", ])
SinaloaS <- (datos2[datos2$Estado == "Sinaloa", ])

Graficación

# Gráfico agrupado
ggplot(SinaloaS, aes(fill=Jurisdiccion, y=Diagnostico)) +
  geom_bar(posotion = "dodge", stat= "count") +
  xlab("Numero de casos") +
  ylab("Diagnostico") +
  ggtitle("Enfermedades crónicas en Sinaloa, 2018 (CENAPRECE)")
## Warning: Ignoring unknown parameters: posotion

### Tabla interactiva de datos

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