U1A3 Distribucion de Frecuencia de Casos Confirmados, decesos y recuperados

de COVID-19 en Mexico usando datos de la universidad Johns Hopkins

Importar paquetes

library(readr) #Leer archivos
library(plotly)# Graficos Interactivos
## Loading required package: ggplot2
## 
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
## 
##     last_plot
## The following object is masked from 'package:stats':
## 
##     filter
## The following object is masked from 'package:graphics':
## 
##     layout
library(tidyverse)#Paquete de ciencia de datos
## -- Attaching packages ------------------------------------------------------ tidyverse 1.3.0 --
## v tibble  3.0.3     v dplyr   1.0.2
## v tidyr   1.1.1     v stringr 1.4.0
## v purrr   0.3.4     v forcats 0.5.0
## -- Conflicts --------------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks plotly::filter(), stats::filter()
## x dplyr::lag()    masks stats::lag()
library(gganimate)#Animar graficas
library(gifski)#Hacer GIF's
  • Importar datos Leer las URL de datos del repositorio de JHU
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"
  • Descargar los archivos .csv de las url Archivos de valores separados por comas csv
datos_conf <- read.csv(url_conf)
datos_decesos <-read.csv(url_decesos)
datos_recuperados <- read.csv(url_recuperados)
  • Extraer los datos para Albania
conf_alb <- t(datos_conf [datos_conf$Country.Region=="Albania" ,])
dec_alb <- t(datos_decesos [datos_decesos$Country.Region=="Albania" ,])
rec_alb <- t(datos_recuperados [datos_recuperados$Country.Region=="Albania" ,])

Ordenar y transformar

Primeras graficas para reconocimiento

plot(conf_alb)
## Warning in xy.coords(x, y, xlabel, ylabel, log): NAs introduced by coercion

plot(dec_alb)
## Warning in xy.coords(x, y, xlabel, ylabel, log): NAs introduced by coercion

plot(rec_alb)
## Warning in xy.coords(x, y, xlabel, ylabel, log): NAs introduced by coercion

*Transformacion de datos

Fecha <- seq(from = as.Date("2020-01-22"), to = as.Date("2020-09-03"), by = 'day')

#Datos transformados a vectores numericos
vec1 <- as.vector(conf_alb) # Transformacion de lista a vector
vec2 <- vec1[5:230] #Filtrado de los primeros 4 valores
num1 <- as.numeric(vec2) #Transformacion a datos numerico
Confirmados <- as.vector(num1) #Un vector numerico

#Recuperados
vec1 <- as.vector(rec_alb) # Transformacion de lista a vector
vec2 <- vec1[5:230] #Filtrado de los primeros 4 valores
num1 <- as.numeric(vec2) #Transformacion a datos numerico
Recuperados <- as.vector(num1) #Un vector numerico

#Decesos
vec1 <- as.vector(dec_alb) # Transformacion de lista a vector
vec2 <- vec1[5:230] #Filtrado de los primeros 4 valores
num1 <- as.numeric(vec2) #Transformacion a datos numerico
Decesos <- as.vector(num1) #Un vector numerico

datos1 <- data.frame(Fecha, Confirmados, Decesos, Recuperados)

Visualizar

  • A continuación se presentan 3 gráficas simples elaboradas con ggplot para Confirmados, Recuperados, decesos e COVID-19 en Albania, al día 09/09/20
#Figura 2 Confirmados ggplot
ggplot(data = datos1) +
  geom_line(mapping = aes(x = Fecha, y = Confirmados)) +
  ggtitle("Casos acumulados confirmados de COVID-19 en Albania, al día 06/09/20")

#Figura 3 Recuperados ggplot
ggplot(data = datos1) +
  geom_line(mapping = aes(x = Fecha, y = Recuperados)) +
  ggtitle("Casos acumulados de recuperados de COVID-19 en Albania, al día 06/09/20")

#Figura 4 Decesos ggplot
ggplot(data = datos1) +
  geom_line(mapping = aes(x = Fecha, y = Decesos)) +
  ggtitle("Casos acumulados de Decesos de COVID-19 en Albania, al día 06/09/20")

  • Gráfico animado

El objetivo de realizar animacione de transición temporal es ilustrar la manera en la que han crecido los casos confirmados de COVID-19.

ggplot(data = datos1) +
  geom_line(mapping = aes(x = Fecha, y = Confirmados)) +
  ggtitle("Casos acumulados confirmados de COVID-19 en Albania, al día 06/09/20") +
  transition_reveal(Fecha)

  • Gráfico interactivo en conjunto
#Gráfica multiejes 
gcov <- ggplot(data=datos1) +
  geom_line(aes(x=Fecha, y=Confirmados), colour="orange") +
  geom_line(aes(x=Fecha, y=Decesos), colour="pink") +
  geom_line(aes(x=Fecha, y=Recuperados), colour="red") +
  ggtitle("Casos acumulados de COVID-19 en Italia, al día 06/09/20") +
  ylab("COVID-19 en Albania") + xlab("Mes")
gcov

#Gráfica multiejes animada
ggplot(data=datos1) +
  geom_line(aes(x=Fecha,y=Confirmados),colour='gray') + 
  geom_line(aes(x=Fecha,y=Decesos),colour='yellow') + 
  geom_line(aes(x=Fecha,y=Recuperados),colour="black")+
  ylab('COVID-19 Albania') + xlab('Fecha') +
  transition_reveal(Fecha)

  • Gráfico interactivo con plotly
gcov <-ggplot(data=datos1) +
  geom_line(aes(x=Fecha,y=Confirmados),colour='red') + 
  geom_line(aes(x=Fecha,y=Decesos),colour='blue') + 
  geom_line(aes(x=Fecha,y=Recuperados),colour="green")+
  ylab('COVID-19 Albania') + xlab('Fecha') +
  transition_reveal(Fecha)

ggplotly(gcov)