La Encuesta Nacional de Hogares-Salud (ENAHO) es una iniciativa
crucial dirigida por el Instituto Nacional de Estadística e Informática
(INEI) del Perú, destinada a recopilar información detallada y
representativa sobre diversos aspectos de la salud de la población
peruana. Este estudio se lleva a cabo periódicamente con el objetivo de
proporcionar datos precisos que sirvan como base para la formulación de
políticas públicas y la mejora de los servicios de salud en el
país.
Para este análisis estaremos tomando datos de los Módulos 100 (Características de la Vivienda y del Hogar) y 400 (Salud) para saber la relación entre las personas que están afiliadas al SIS y el material predominante en los techos de sus viviendas.
#LECTURA DE ARCHIVOS-----------------------------------------------
datos01 = read.csv("Enaho01-2019-100.csv", fileEncoding = "Latin1")
datos02 = read.csv("Enaho01a-2019-400.csv", fileEncoding="Latin1")
#PREPROCESAMIENTO DE DATOS-----------------------------------------------
datos01 %>% mutate(IDHOGAR = paste0(CONGLOME, VIVIENDA, HOGAR)) %>% select(-CONGLOME,-VIVIENDA,-HOGAR) -> datos01
datos02 %>% mutate(IDHOGAR = paste0(CONGLOME, VIVIENDA, HOGAR)) %>% select(-CONGLOME,-VIVIENDA,-HOGAR) -> datos02
datos01 %>%
filter(RESULT == 1) -> datos01
datos01 %>% inner_join(datos02)->grupo5x2
grupo5x2 |> select(AÑO, MES, UBIGEO, DOMINIO, ESTRATO, PERIODO, TIPENC, FECENT, RESULT, PANEL, IDHOGAR,
CODPERSO, CODINFOR, P103A, P4195, P1121, P104, P401, P104A, P105A, P107B1, P103A) -> GRUPO5X2F
GRUPO5X2F |> select(P103A, P4195) -> eniksa
mapeo = c('1' = 'Si', '2' = 'No')
mapeo2 <- c('1' = 'Concreto' ,'2' = 'Madera', '3' = 'Tejas',
'4' = 'Calamina', '5' = 'Caña', '6' = 'Triplay',
'7' = 'Paja', '8' = 'Otros')
eniksa$P103A <- mapeo2[eniksa$P103A]
eniksa$P4195 <- mapeo[eniksa$P4195]
eniksa <- eniksa |>
rename('Material_Techo' = P103A, 'SIS' = P4195)
eniksaoficial <- eniksa |> group_by(Material_Techo) |> na.omit() |>
count(SIS) |> spread(SIS, n , fill = 0)
eniksaoficial_longer <- eniksaoficial |> pivot_longer(cols = c('No', 'Si'),
names_to = 'SIS',
values_to = 'Conteo')
eniksaoficial_longer <- eniksaoficial_longer %>%
group_by(Material_Techo) %>%
mutate(
Proporcion = Conteo / sum(Conteo)
) %>%
ungroup() %>%
mutate(
Relleno = case_when(
Material_Techo == "Paja" & SIS == "Si" ~ "Resaltado_Si",
Material_Techo == "Concreto" & SIS == "No" ~ "Resaltado_No",
SIS == "Si" ~ "Pálido_Si",
SIS == "No" ~ "Pálido_No"
),
Etiqueta = case_when(
Material_Techo == "Paja" & SIS == "Si" ~ paste0(round(Proporcion * 100, 1), "%"),
Material_Techo == "Concreto" & SIS == "No" ~ paste0(round(Proporcion * 100, 1), "%"),
TRUE ~ NA_character_
)
)
#Textos
# Texto 1 con fondo de recuadro
texto1_1 <- ggdraw() +
draw_grob(
grob = gTree(children = gList(
rectGrob(
gp = gpar(fill = "white", col = NA), # Fondo azul oscuro
x = 0.5, y = 0.5, width = unit(0.95, "npc"), height = unit(0.5, "npc")
),
textGrob(
"Las personas que tienen como material\npredominante en su techo hecho de\nPaja son quienes más están afiliados a la SIS",
x = 0.5, y = 0.25, hjust = 0.5, vjust = 0.5, gp = gpar(col = "#244379", fontsize = 10)
)
))
)
# Texto 2 con fondo de recuadro
texto2_1 <- ggdraw() +
draw_grob(
grob = gTree(children = gList(
rectGrob(
gp = gpar(fill = "white", col = NA), # Fondo naranja
x = 0.5, y = 0.5, width = unit(0.95, "npc"), height = unit(0.5, "npc")
),
textGrob(
"Las personas que tienen como material\npredominante en su techo hecho de\nConcreto son quienes menos están afiliados al SIS.",
x = 0.5, y = 0.5, hjust = 0.5, vjust = 0.5, gp = gpar(col = "#e2660e", fontsize = 10)
)
))
)
# Definir los colores manualmente
colores <- c(
"Resaltado_Si" = "#244379",
"Resaltado_No" = "#e2660e",
"Pálido_Si" = "#acbac8",
"Pálido_No" = "#f1d3b2"
)
# Graficar los textos junto con el gráfico principal
ggplot(eniksaoficial_longer) +
aes(x = Material_Techo, y = Proporcion, fill = Relleno) +
geom_bar(stat = 'identity', position = 'fill', color = 'white') +
geom_text(
aes(label = Etiqueta),
position = position_fill(vjust = 0.5),
size = 3.5,
color = "white",
na.rm = TRUE
) +
scale_fill_manual(
values = colores,
breaks = c("Pálido_Si", "Pálido_No"),
labels = c("Si", "No")
) +
labs(
title = "Proporción de personas con SIS y materiales predominantes en los techos",
fill = NULL,
x = NULL,
y = NULL
) +
theme_minimal() +
theme(panel.background = element_blank(),
legend.position = "top",
axis.text.x = element_blank(),
axis.ticks.x = element_blank()
) +
coord_flip() -> sis
a <- plot_grid(
sis,
plot_grid(texto1_1, texto2_1, ncol = 1, rel_heights = c(1, 1)),
ncol = 2, rel_widths = c(3, 2)
)
a