U1A6

Santana

14/9/2020

Análisis comparativo de casos confirmados de COVID-19 en Sonora y Sinaloa

  • Establecer folder de trabajo
#Establecemos la carpeta de trabajo
setwd("~/ProbabilidadYEstadistica")

IMPORTAR

IMPORTAR PAQUETES

#En este chunk se instala y se llama a las librerías
#Install(pacman)
library(pacman)
p_load("base64enc", "htmltools", "mime", "xfun", "prettydoc", "readr", "knitr", "DT", "scales", "tidyverse", "gridExtra", "modeest" , "fdth")

IMPORTAR DATOS

#Establecemos una variable para acceder a los datos
datos <- read.csv("Casos_Diarios_Estado_Nacional_Confirmados_20200913.csv")

TRANSFORMAR Y FILTRAR

#Filtramos el estado del que queremos tomar la informacion

#Extraemos los datos de Puebla y los transformamos a un vector
puebla <- t(datos[datos$nombre == "PUEBLA" ,])# t = transpuesta
puebla <- as.vector(puebla)
puebla <- puebla
puebla <- puebla[4:248]
puebla <- as.numeric(puebla)
puebla<- as.vector(puebla)
apuebla <- cumsum(puebla)

#Extraemos los datos de Guerrero y los tranfromamos en un vector
guerrero <- t(datos[datos$nombre == "GUERRERO" ,])# t = transpuesta
guerrero <- as.vector(guerrero)
guerrero <- guerrero
guerrero <- guerrero[4:248]
guerrero <- as.numeric(guerrero)
guerrero <- as.vector(guerrero)
aguerrero <- cumsum(guerrero) #aALGO significa acumulado de algo

# Estructuración de los datos en un marco de datos ( Data frame)

Fecha <- seq(from= as.Date("2020-01-12"), to = as.Date("2020-09-12"), by = "day" ) #Vector de fechas desde el 12 de enero al 12 de septiembre de 2020

#Data frame de datos absolutos
puegue <- data.frame(Fecha,puebla,guerrero)

#Data frame de datos acumulados
apuegue <- data.frame(Fecha,apuebla,aguerrero)

VISUALIZAR

Tabla

#Tabla interactiva de datos diarios absolutos de Puebla y Guerrero
datatable(puegue)
#Tabla interactiva de datos diarios acumulados de Puebla y Guerrero
datatable(apuegue)

Graficas

Graficas utilizando ggplot

#Series de tiempo
#Datos absolutos
ggplot(data = puegue) +
  geom_line(aes(Fecha, puebla, colour = "puebla"))+
  geom_line(aes(Fecha, guerrero, colour = "guerrero"))+
  xlab("Mes del ano 2020") +
  ylab("Casos Diarios") +
  ggtitle("Casos diarios confirmados de COVID-19 en puebla y guerrero")

#Datos acumulados
ggplot(data = apuegue) +
  geom_line(aes(Fecha, apuebla, colour = "puebla"))+
  geom_line(aes(Fecha, aguerrero, colour = "guerrero"))+
  xlab("Mes del ano 2020") +
  ylab("Casos Diarios") +
  ggtitle("Casos diarios confirmados acumulados de COVID-19 en puebla y guerrero") +
  scale_y_continuous(labels = comma)

Podemos observar que en puebla los casos diaros tanto confimados y acumulados obviamente de COVID-19 son mayores en Puebla a comparacion de Guerrero, pero ambos sobrepasan los 15,000 casos diarios acumulados lo cual es preocupante.

Grafica combinada de datos acumulados y absolutos

Grafica para Puebla

puebla1 <- data.frame(Fecha, puebla, apuebla)

g2 <- ggplot(data = puebla1) +
  geom_col(aes(Fecha, apuebla))+
  xlab("Mes del ano 2020") +
  ylab("Casos Acumulados") +
  ggtitle("A) Casos diarios acumulados de COVID-19 en puebla")

g3 <- ggplot(data = puebla1) +
  geom_line(aes(Fecha, apuebla))+
  xlab("Mes del ano 2020") +
  ylab("Casos Diarios") +
  ggtitle("B) Casos diarios de COVID-19 en puebla")

grid.arrange(g2, g3)

En estas graficas se aprecia el impulso de casos que hubo en Puebla a partir de Julio, cuando llego a el estado y se hubo poca precaución con respecto a las medidas de seguridad.

Grafica para Guerrero

guerrero1 <- data.frame(Fecha, guerrero, aguerrero)

g2 <- ggplot(data = guerrero1) +
  geom_col(aes(Fecha, aguerrero))+
  xlab("Mes del ano 2020") +
  ylab("Casos Acumulados") +
  ggtitle("A) Casos diarios acumulados de COVID-19 en Guerrero")

g3 <- ggplot(data = guerrero1) +
  geom_line(aes(Fecha, aguerrero))+
  xlab("Mes del ano 2020") +
  ylab("Casos Diarios") +
  ggtitle("B) Casos diarios de COVID-19 en Guerrero")

grid.arrange(g2, g3)

Podemos ver que a mediados de Abril los casos en Guerrero se dispararon exponencialmente dejando en alerta al Estado.

Medidas de posicion central

Puebla

Calculo individual de las medidas principales de valores confirmados para Puebla y Guerrero (Media, Mediana y Moda)

Media

mean(puebla) #Media para Puebla
## [1] 118.8939
mean(guerrero) # Media para Guerrero
## [1] 67.15918

En la medida para ambos estado observamos que en puebla hay mas casos diarios que en guerrero.

Mediana

median(puebla) #Media para Puebla
## [1] 61
median(guerrero) # Media para Guerrero
## [1] 40

En la mediana de ambos estado se puede apreciar que es mas grande para Puebla que para Guerrero.

Moda

#mfv = most value frecuence
mfv(puebla) #Media para Puebla
## [1] 0
mfv(guerrero) # Media para Guerrero
## [1] 0

Aqui se empezo a tomar los datos en los primeros días, debido a eso no se reportaron o registraron casos en un periodo de tiempo extendido, lo que deja una Moda de 0 para ambos estados.

Resumen de posicion central

summary(puebla)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##     0.0     2.0    61.0   118.9   194.0   503.0
summary(guerrero)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    0.00    0.00   40.00   67.16  129.00  303.00

El resumen de ambos estados es poco alentados, una vez mas se observa que Puebla tiene mas casos que Guerrero.

Grafico de caja y bigote

boxplot(puebla)

boxplot(guerrero)

En las tablas de caja y bigotes se pueden ver que los valores máximos en son mas grandes en Guerrero, sin embargo en Puebla hay valores que se salen fuera de la media, significa que tiene días donde las infecciones son atipicas, o sea que se salen de los parametros normales, ergo hay mas casos.

Medidas de dispersion

Variancia

#Distancia que existe entre los valores y la media
var(puebla)
## [1] 18116.68
var(guerrero)
## [1] 5234.011

Se puede ver que los casos estan mucho mas dispersos en Puebla que en Guerrero

Desviacion estandar

#La desviacion que existe entre todos los valores y la media
sd(puebla)
## [1] 134.5982
sd(guerrero)
## [1] 72.34647

Si se le saca la raíz cuadrada a la varianza, los datos de Pueba aun serán mayores que los datos de Guerrero, ya que la varianza es mayor en Yucatán

Tablas de frecuencia

#Distribucion de frecuencia de datos de Puebla

puebla #La variable ya esta guardada con datos anteriormente
##   [1]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [19]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [37]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [55]   0   0   0   0   0   1   1   4   3   3   2   5   6   7   5   4   2   8
##  [73]  16   6  15   9  13   4  15  21  16  19  14  11   8  24  13  23  11   8
##  [91]  15   5  25  16  28  21  30  24  18  31  22  27  32  40  43  24  35  43
## [109]  44  46  41  42  37  46  34  49  63  46  48  36  71  73  91 106 104  78
## [127]  66 129 126 118 143 171 146  80 165 159 187 163 149 116  61 184 164 192
## [145] 204 204 123  92 301 235 246 294 305 171 144 438 413 415 503 430 212 167
## [163] 489 409 363 448 352 182 142 335 354 317 274 273 175 132 330 338 324 321
## [181] 314 174 172 417 419 401 385 379 183 160 473 355 379 346 338 223 105 435
## [199] 326 334 334 250 132  94 308 275 294 318 259 163  96 294 285 257 237 218
## [217] 121  80 250 220 209 195 188 123  78 259 206 201 189 193  83  89 194 178
## [235] 180 171 156  95  64 156 125 100  59  27   3
#Debera instalar el paquete que vamos a llamar

library(fdth) # carga la extensión fdth (para el calculo de distribución de frecuencias.

# Frecuencia de contagios diarios de Puebla.
dist <- fdt(puebla,breaks="Sturges") # calcula la distribución de frecuencias utilizando la regla Sturge

dist #nos brinda una tabla con los calculos de la distribución de frecuencias.
##       Class limits   f   rf rf(%)  cf  cf(%)
##        [0,56.4478) 121 0.49 49.39 121  49.39
##  [56.4478,112.896)  22 0.09  8.98 143  58.37
##  [112.896,169.343)  24 0.10  9.80 167  68.16
##  [169.343,225.791)  27 0.11 11.02 194  79.18
##  [225.791,282.239)  11 0.04  4.49 205  83.67
##  [282.239,338.687)  19 0.08  7.76 224  91.43
##  [338.687,395.134)   8 0.03  3.27 232  94.69
##  [395.134,451.582)  10 0.04  4.08 242  98.78
##   [451.582,508.03)   3 0.01  1.22 245 100.00
plot(dist,type="fp")#Poligono de frecuencias absoluto

plot(dist,type="cfp") #Poligono de frecuencias acumulados

plot(dist,type="fh") #Histograma de fecuencia absoluto

plot(dist,type="cfh") #Histograma de fecuencia acumulados

#Distribucion de frecuencia de datos de Guerrero

guerrero #La variable ya esta guardada con datos anteriormente
##   [1]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [19]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [37]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [55]   0   0   0   0   0   0   0   2   0   0   2   5   1   0   0   1   0   1
##  [73]   0   3   4   3   3   1   2   5   3   1   1   2   3   8  11   6   7   5
##  [91]   5  12  17   7   5  11  13   9   6  16   7  13  19  25  13  18  27  29
## [109]  31  18  14  40  29  54  37  47  41  40  36  33  48  59  48  75  61  51
## [127]  41 128 110 142 140 131  66  71 136 118 121 114  98  62  79 153 110 116
## [145] 131 125  93  65 153 108 154 154 152  79  97 143 153 110 106 135  54  71
## [163] 180 126  97 134 127 144 173 253 251 264 303 274 191 153 161 147 119 144
## [181] 139  40 129 161 171 136 169 119 116 129 246 147 153 219 197  96  88 209
## [199] 182 144 197 167 127  63 187 217 218 160 140  61  42 178 128 106 151 112
## [217]  75  47 134 122 136  99  93  63  55 127 143 102 115 138  37  38 142 158
## [235] 171 156 159  45  67 171 130 104  24   5   0
# Frecuencia de contagios diarios de Guerrero.
dist <- fdt(guerrero,breaks="Sturges")

dist
##       Class limits   f   rf rf(%)  cf  cf(%)
##        [0,34.0033) 116 0.47 47.35 116  47.35
##  [34.0033,68.0067)  28 0.11 11.43 144  58.78
##   [68.0067,102.01)  15 0.06  6.12 159  64.90
##   [102.01,136.013)  35 0.14 14.29 194  79.18
##  [136.013,170.017)  30 0.12 12.24 224  91.43
##   [170.017,204.02)  11 0.04  4.49 235  95.92
##   [204.02,238.023)   4 0.02  1.63 239  97.55
##  [238.023,272.027)   4 0.02  1.63 243  99.18
##   [272.027,306.03)   2 0.01  0.82 245 100.00
plot(dist,type="fp")#Poligono de frecuencias absoluto

plot(dist,type="cfp") #Poligono de frecuencias acumulados

plot(dist,type="fh") #Histograma de fecuencia absoluto

plot(dist,type="cfh") #Histograma de fecuencia acumulados

Tablas de frecuencia acumulados

dist <- fdt(apuebla,breaks="Sturges")

plot(dist,type="fp")#Poligono de frecuencias absoluto

plot(dist,type="cfp") #Poligono de frecuencias acumulados

plot(dist,type="fh") #Histograma de fecuencia absoluto

plot(dist,type="cfh") #Histograma de fecuencia acumulados

dist <- fdt(aguerrero,breaks="Sturges")

plot(dist,type="fp")#Poligono de frecuencias absoluto

plot(dist,type="cfp") #Poligono de frecuencias acumulados

plot(dist,type="fh") #Histograma de fecuencia absoluto

plot(dist,type="cfh") #Histograma de fecuencia acumulados

Histogramas para ambos estados

par(mfrow=c(1,2)) # particiona mi ventana grafica en 1x1 (filas, columnas), para mas claridad con las graficas.

sort(puebla)
##   [1]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [19]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [37]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [55]   0   0   0   0   0   1   1   2   2   3   3   3   4   4   4   5   5   5
##  [73]   6   6   7   8   8   8   9  11  11  13  13  14  15  15  15  16  16  16
##  [91]  18  19  21  21  22  23  24  24  24  25  27  27  28  30  31  32  34  35
## [109]  36  37  40  41  42  43  43  44  46  46  46  48  49  59  61  63  64  66
## [127]  71  73  78  78  80  80  83  89  91  92  94  95  96 100 104 105 106 116
## [145] 118 121 123 123 125 126 129 132 132 142 143 144 146 149 156 156 159 160
## [163] 163 163 164 165 167 171 171 171 172 174 175 178 180 182 183 184 187 188
## [181] 189 192 193 194 195 201 204 204 206 209 212 218 220 223 235 237 246 250
## [199] 250 257 259 259 273 274 275 285 294 294 294 301 305 308 314 317 318 321
## [217] 324 326 330 334 334 335 338 338 346 352 354 355 363 379 379 385 401 409
## [235] 413 415 417 419 430 435 438 448 473 489 503
hist(puebla, breaks = "Sturges") #histograma utilizando el numero de clases según Sturge

sort(guerrero)
##   [1]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [19]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [37]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
##  [55]   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1
##  [73]   1   1   2   2   2   2   3   3   3   3   3   4   5   5   5   5   5   5
##  [91]   6   6   7   7   7   8   9  11  11  12  13  13  13  14  16  17  18  18
## [109]  19  24  25  27  29  29  31  33  36  37  37  38  40  40  40  41  41  42
## [127]  45  47  47  48  48  51  54  54  55  59  61  61  62  63  63  65  66  67
## [145]  71  71  75  75  79  79  88  93  93  96  97  97  98  99 102 104 106 106
## [163] 108 110 110 110 112 114 115 116 116 118 119 119 121 122 125 126 127 127
## [181] 127 128 128 129 129 130 131 131 134 134 135 136 136 136 138 139 140 140
## [199] 142 142 143 143 144 144 144 147 147 151 152 153 153 153 153 153 154 154
## [217] 156 158 159 160 161 161 167 169 171 171 171 173 178 180 182 187 191 197
## [235] 197 209 217 218 219 246 251 253 264 274 303
#Histograma de feciencias acumuladas de Guerrero
hist(guerrero, breaks = "Sturges")

Conclusion

Se puede observar tras tanta información y tablas que las personas en Puebla son mas propensas a contagios que los de Guerrero probablemente por falta de precaucion, probablemente por la cantidad de gente que habita el estado y su constante concurrencia dentro de las instalaciones.