Un análisis sobre el dengue en el Perú

PREGUNTA 1:

library(rio)
library(readr)
dengue1 <- read_csv("denguedatosamplios.csv")
## New names:
## Rows: 177 Columns: 5
## ── Column specification
## ──────────────────────────────────────────────────────── Delimiter: "," chr
## (2): enfermedad, estado dbl (3): ...1, ano, valorestado
## ℹ Use `spec()` to retrieve the full column specification for this data. ℹ
## Specify the column types or set `show_col_types = FALSE` to quiet this message.
## • `` -> `...1`
View(dengue1)

Cambiamos el nombre de las columnas:

dengue1 = dengue1[,-c(1)]
colnames(dengue1)=c("Año","Situación","Estado","Valor")

PREGUNTA 2: ¿La edad media del contagiado del dengue varió a través de los años?

library(ggplot2)

facets= ggplot(data=dengue1,
               aes(x=Año,y=Valor,color=Situación)) + theme_light() +
    scale_y_log10(labels=scales::comma) 
facets +    
    geom_smooth()  + 
    facet_grid(Estado~.,scales = 'free_y') 
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'

Respuesta: Es posible apreciar en el gráfico que la edad media del contagiado si varió a través de los años, con una tendencia al alza, no obstante, como se puede ver esta variación no fue igual de acuerdo a la gravedad o la situación del contagiado pues las categorías “sin señales” y “grave” parecen manternerse relativamente uniformes con el paso de los años mientras que la edad media de los pacientes en situación de “alarma” sufre un aumento notorio entre los años 2000 y 2010.

PREGUNTA 3: ¿La cantidad de casos varió a través de los años? ¿Fue lo mismo según la gravedad?

facets +
    geom_line() + 
    facet_grid(Estado~.,scales = 'free_y') 

Respuesta: Como se puede apreciar en el gráfico si existe un aumento en la variación de casos a través de los años, especialmente en aquellos contagiados en situación de “alarma”, cuyos casos pasaron de 1 para mediados del 2002 a cerca de 10,000 para el 2021. Aquellos contagiados “sin señales” parecen mantener una relativa uniformidad con un número alto de casos, mientras que aquellos casos en situación “grave” pese a unas caídas significativas entre los años 2000-2011 aún superan los 500 casos anuales.

PREGUNTA 4:

¿Cuales fueron las provincias más afectadas con contagiados a lo largo de los años ?

dengue2 <- read_csv("denguePeorProv.csv")
## Rows: 43 Columns: 3
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (2): departamento, provincia
## dbl (1): case
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
View(dengue2)
dengue2[dengue2$departamento=='LORETO',]
## # A tibble: 2 × 3
##   departamento provincia      case
##   <chr>        <chr>         <dbl>
## 1 LORETO       ALTO AMAZONAS     1
## 2 LORETO       MAYNAS           13
dengue2[order(-dengue2$case),]
## # A tibble: 43 × 3
##    departamento  provincia         case
##    <chr>         <chr>            <dbl>
##  1 LORETO        MAYNAS              13
##  2 MADRE DE DIOS TAMBOPATA           13
##  3 TUMBES        TUMBES              12
##  4 UCAYALI       CORONEL PORTILLO    12
##  5 PASCO         OXAPAMPA            11
##  6 CAJAMARCA     JAEN                10
##  7 HUANUCO       LEONCIO PRADO       10
##  8 PIURA         PIURA               10
##  9 CUSCO         LA CONVENCION        9
## 10 JUNIN         CHANCHAMAYO          9
## # ℹ 33 more rows
baseHeat  = ggplot(dengue2, aes(x = reorder(departamento,case), y = reorder(provincia,case), fill=case)) + theme_classic()
heatDefault = baseHeat +  geom_tile() #here

heatBetter=heatDefault +scale_fill_gradient(low = 'green',high = 'black')
heatBetter + theme(axis.text.x = element_text(angle = 60,vjust = 1,hjust = 1),
                   axis.text.y = element_text(size=4)) +
                   geom_text(aes(label=ifelse(case>=10,case,"")),
                             size=2,fontface='bold', color='white')

Respuesta: De acuerdo al gráfico y a la data procesa es posible apreciar que las provincias más afectadas a lo largo de los años fueron Tambopata, Maynas, Tumbes y Coronel Portillo, siendo Loreto, Madre de Dios, Pasco, Lima y Ucayali las regiones en las que se presentaron las provincias con mayor número de contagiados.

PREGUNTA 5: ¿Que relación había entre los casos alarmante no graves y los asintomáticos según departamento a lo largo de los años?

dengue3 <- read_csv("AñoLugar.csv")
## New names:
## Rows: 203 Columns: 7
## ── Column specification
## ──────────────────────────────────────────────────────── Delimiter: "," chr
## (2): departamento, rateAlarma.cut dbl (5): ...1, ano, sum_SIN_SEÑALES,
## sum_ALARMA, rateAlarma
## ℹ Use `spec()` to retrieve the full column specification for this data. ℹ
## Specify the column types or set `show_col_types = FALSE` to quiet this message.
## • `` -> `...1`
View(dengue3)
summary(dengue3)
##       ...1            ano       departamento       sum_SIN_SEÑALES  
##  Min.   :  0.0   Min.   :2012   Length:203         Min.   :    0.0  
##  1st Qu.: 50.5   1st Qu.:2015   Class :character   1st Qu.:   76.5  
##  Median :101.0   Median :2017   Mode  :character   Median :  449.0  
##  Mean   :101.0   Mean   :2017                      Mean   : 1228.0  
##  3rd Qu.:151.5   3rd Qu.:2020                      3rd Qu.: 1525.0  
##  Max.   :202.0   Max.   :2022                      Max.   :17360.0  
##    sum_ALARMA       rateAlarma      rateAlarma.cut    
##  Min.   :   0.0   Min.   :0.00000   Length:203        
##  1st Qu.:   6.5   1st Qu.:0.03673   Class :character  
##  Median :  41.0   Median :0.10378   Mode  :character  
##  Mean   : 231.7   Mean   :    Inf                     
##  3rd Qu.: 211.0   3rd Qu.:0.28067                     
##  Max.   :4789.0   Max.   :    Inf
dengue3 = dengue3[,-c(1)]
colnames(dengue3)=c("Año","Departamento","Sin señales","Alarma" ,"RatioAlarma","RatioAlarmcut")
baseHeat  = ggplot(dengue3, aes(x = as.factor(Año),
                                       y =reorder(Departamento,
                                                  RatioAlarma), 
                                       fill=RatioAlarmcut)) + theme_classic()
heatDefault = baseHeat +  geom_tile(show.legend = T) #here

heatBetter=heatDefault +scale_fill_brewer(palette = "Blues")
heatBetter + theme(axis.text.x = element_text(angle = 60,vjust = 1,hjust = 1),
                   axis.text.y = element_text(size=4))

Respuesta: Existe una relación inversa, donde el número de pacientes sin señales o asintomaticos suele ser superior a los casos graves. De la misma manera, es posible apreciar que en su mayoría el ratio de contagiados en situación de alarma en relación a los asintomáticos suele ser baja, donde raramente se supera el 50%, mientras que en la mayoría de regiones a través de los años no llega ni al 10%. No obstante, en algunas regiones cómo Madre de Dios O Loreto, se muestra una relación mas fuerte entre los casos asintomáticos y los alarmantes no graves, lo que podría indicar una deficiente o diferente respuesta a la enfermedad en términos de detección o diagnóstico.

Realizamos una breve prueba de correlación para comprobar:

correlacion <- cor(dengue3$`Sin señales`, dengue3$Alarma)
correlacion
## [1] 0.8455061

De acuerdo a la prueba no existiría una correlación estadísticamente significativa entre las variables.