setwd("~/VERANOPYE")
#Analizar series de tiempo acumuladas de datos 
#de COVID-19 en Russia utilizando el repositorio de JHU

#El COVID-19, desde su aparicion en la ciudad Wuhan en China, no ha dejado de extenderse por todo el mundo, por tal razon analizaremos los datos del COVID-19 (casos confirmados, decesos y recuperados) en Russia.

#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)
#Estas son las bibliotecas que estaremos usando para la realizacion de la figuras para representar de los datos.

#declaracion de 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"
#Estos son los links de donde se obtendran los datos de los casos confirmados, decesos y recuperados en dicho pais.

#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)
#Aqui se trata de leer los archivos que se encuentran en "Valores separados por comas" desde los URL anteriormente vistos

#Filtrar datos para Russia 
conf_rus <- t(datos_conf[datos_conf$Country.Region=="Russia" ,])
dec_rus <- t(datos_decesos [datos_decesos$Country.Region=="Russia" ,])
rec_rus <- t(datos_recuperados [datos_recuperados$Country.Region=="Russia" ,])
#Se ejecuta esto para filtrar los datos de una forma facil y rapida de buscar y trabajar en un conjunto de datos que se encuentran en una tabla.

#Primer figura acumulada
plot(conf_rus)
## Warning in xy.coords(x, y, xlabel, ylabel, log): NAs introducidos por coerción

#En esta figura se puede observar los datos confirmados de COVID-19 en Russia, por lo cual se puede ver que los casos confirmados se encuentran demasiado elevados.

#Para crear un vector de fecha con formato: Dia-Mes-Año

Fecha <- seq(from = as.Date("2020-01-22"), to = as.Date("2020-06-08"), by="day")
#Se realizo este vector desde el dia 22 de enero de 2020 al dia 08 de junio del 2020, que se ejecutara por medio de dia. 

#Formatear datos confirmados 
vec1 <- as.vector(conf_rus)  #transformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #filtrar datos en un rango
num1 <- as.numeric(vec2) # transformar a numericos
Confirmados <- as.vector(num1) #vector numerico

#Formatear datos de decesos
vec1 <- as.vector(dec_rus)  #transformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #filtrar datos en un rango 
num1 <- as.numeric(vec2) # transformar a numericos 
Decesos <- as.vector(num1) #vector numerico

#Formatear datos de recuperados
vec1 <- as.vector(rec_rus)  #transformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #filtrar datos en un rango 
num1 <- as.numeric(vec2) # transformar a numericos 
Recuperados <- as.vector(num1) #vector numerico
#En cada uno de los casos se pasa de formato matriz a vector numerico para construir figuras con los tres casos (confirmados, decesos y recuperados) en una sola figura.

#Para construir un marco de datos
datos1 <- data.frame(Fecha, Confirmados, Decesos, Recuperados)
#Se debe de construir un marco de datos por medio de estructuras de datos que se encuentran en en dos dimensiones.

#Figura 2 de casos confirmados en Russia
#utilizando ggplot
ggplot(data=datos1) +
  geom_line(mapping = aes(x=Fecha, y=Confirmados))

#En esta figura se observan los casos confirmados en Russia en el cual se puede ver que son bastantes los casos confirmados porque hasta el dia 8 de junio se tienen mas de 400000 de casos confirmados.

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

#En esta figura se observan los decesos en Russia en el cual se puede ver que son bastantes porque hasta el dia 8 de junio de 2020 se tienen 6000 de decesos.

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

#En esta figura se observan las personas recuperadas en Russia en el cual se puede ver que son bastantes porque hasta el dia 8 de junio de 2020 se tiene mas de 200000 recuperados.


#Animacion simple
ggplot(data=datos1) +
  ggtitle("Casos confirmados acumulados COVID-19 en Russia") +
  geom_line(mapping = aes(x=Fecha, y=Confirmados)) +
  transition_reveal(Fecha)

#Aqui se puede observar una animacion de los casos confirmados de COVID-19 en Russia, donde en el eje x nos indica la fecha y en el eje y nos indica los casos confirmados.

#Figura 5 multi ejes 
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 Russia") + xlab("Fecha")

#En esta figura se puede observar que es importante las comillas a utilizar para realizar la representacion, en el cual podemos observar que los colores no corresponden a los datos.

#Animacion multiejes
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 Russia') + xlab('Fecha') +
  transition_reveal(Fecha)

#Aqui se puede observar los datos (confirmados, decesos y recuperados) en una animacion por lo que es mas facil y atractivo entenderlo.

#Grafica interactiva
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 Russia') + xlab('Fecha')

ggplotly(gcov)
#Se puede observar el comportamiento del COVID-19 en Russia donde el eje x nos representa la fecha y en el eje y los casos del COVID-19 pero divido en tres  primero los confirmados en rojo, despues los decesos en azul y por ultimo los recuperados en verde. En esta representacion se puede ver que la mitad de los casos confirmados se han estado recupendo. 


#Russia es uno de los paises mas afectados porque los casos y las muertes van creciendo de manera acelerada.