setwd("~/PyE")
#Analizar series de tiempo acumuladas de datos
#de COVID-19 en Italia.
#Italia es reconocida por su arte, su cultura y sus numerosos monumentos, entre ellos la torre de Pisa y el Coliseo romano;
#asà como por su gastronomÃa (platos italianos famosos son la pizza y la pasta), su vino,
#su estilo de vida, su pintura, su diseño, cine, teatro, literatura y música, en particular, la ópera.
#Lamentablemente Italia como otros paises del mundo han sido de los mas afectados por COVID 19
#Acontinuacion se muestra el analisis de datos oficiales registrados actualizados.
#Declaramos las bibliotecas
library(readr)
library(tidyverse)
## -- Attaching packages ----------------------------------------------------------------------- tidyverse 1.3.0 --
## v ggplot2 3.3.1 v dplyr 1.0.0
## v tibble 3.0.1 v stringr 1.4.0
## v tidyr 1.1.0 v forcats 0.5.0
## v purrr 0.3.4
## -- Conflicts -------------------------------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
library(plotly)
##
## 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(gganimate)
library(gifski)
#Declaramos las variables
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 proporcionadas anteriormente
datos_conf <- read.csv(url_conf)
datos_decesos <-read.csv(url_decesos)
datos_recuperados <- read.csv(url_recuperados)
#Filtramos los datos para utilizar solo los de Italia
conf_ita <- t(datos_conf[datos_conf$Country.Region=="Italy" ,])
dec_ita <- t(datos_decesos [datos_decesos$Country.Region=="Italy" ,])
rec_ita <- t(datos_recuperados [datos_recuperados$Country.Region=="Italy" ,])
#Primer figura acumulada
plot(conf_ita)
## Warning in xy.coords(x, y, xlabel, ylabel, log): NAs introducidos por coerción

#Creamos un vector de fecha con formato : DÃa-Mes-Año
Fecha <- seq(from = as.Date("2020-01-22"), to = as.Date("2020-06-08"), by="day")
#Formatear datos confirmados
vec1 <- as.vector(conf_ita) #transformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #filtrar datos en un rango
num1 <- as.numeric(vec2) # transformar a numéricos
Confirmados <- as.vector(num1) #vector numérico
#Formatear datos de decesos
vec1 <- as.vector(dec_ita) #transformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #filtrar datos en un rango
num1 <- as.numeric(vec2) # transformar a numéricos
Decesos <- as.vector(num1) #vector numérico
#Formatear datos de recuperados
vec1 <- as.vector(rec_ita) #transformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #filtramos datos en un rango
num1 <- as.numeric(vec2) # transformamos a numéricos
Recuperados <- as.vector(num1) #vector numérico
#Tenemos conocimiento que la informacion proporcionada llama mas la atencion de la comunidad de manera gráfica que numérica
#es por eso que generamos las siguientes imágenes
#Construir un marco de datos
datos1 <- data.frame(Fecha, Confirmados, Decesos, Recuperados)
#Figura 2 casos confirmados en Italia
ggplot (data=datos1) +
geom_line(mapping = aes(x=Fecha, y=Confirmados))

#Figura 3 Decesos
ggplot (data=datos1) +
geom_line(mapping = aes(x=Fecha, y=Decesos))

#Figura 4 Recuperados
ggplot (data=datos1) +
geom_line(mapping = aes(x=Fecha, y=Recuperados))

#Generamos una animación simple
ggplot(data=datos1) +
ggtitle("Casos confirmados acumulados COVID-19 en Italia") +
geom_line(mapping = aes(x=Fecha, y=Confirmados)) +
transition_reveal(Fecha)
#Creamos una animacion con un color por eje y clasificado por decesos, confirmados y recuperados respectivamente
ggplot(data=datos1) +
geom_line(aes(x=Fecha,y=Confirmados),color='red') +
geom_line(aes(x=Fecha,y=Decesos),color='blue') +
geom_line(aes(x=Fecha,y=Recuperados),color='green')+
ylab('COVID-19 Italia') + xlab('Fecha') +
transition_reveal(Fecha)

#Generamos una Grafica interactiva para visualizar los datos en cada tramo de la misma
gcov <- ggplot(data=datos1) +
geom_line(aes(x=Fecha,y=Confirmados),color='red') +
geom_line(aes(x=Fecha,y=Decesos),color='blue') +
geom_line(aes(x=Fecha,y=Recuperados),color='green')+
ylab('COVID-19 Italia') + xlab('Fecha')
ggplotly(gcov)