Clase número 3 sobre visualización de datos usando RStudio

Primeramente, instalamos todos los paquetes que serán utilizados para el procesamiento de la información y la generación de gráficas.

En este caso, filtraremos los datos de la Encuesta Nacional de Ocupación y Empleo (ENOE) para obtener la información sobre la Población No Económicamente Activa (PNEA). La variable de interés es el estado conyugal de las personas pertenecientes a la PNEA, por lo que se etiquetará la variable.

paquetes=c("scales","survey","ggsurvey","forcats","haven","readxl","readxl","fastDummies","readr", "dplyr", "foreign", "tidyr", "ggplot2", "writexl","openxlsx","gridExtra", "ggthemes")
for (i in paquetes) {if (!require(i, character.only = TRUE)) {install.packages(i);library(i, character.only = TRUE)} else {library(i, character.only = TRUE)}}

setwd("~/Documents/uwu/uwu")

enoe=read_dta("ENOE_SDEMT423.dta")

enoe$clase1=as.numeric(enoe$clase1)

pnea <- enoe %>%
  filter(enoe$clase1 == 2)

pnea <- pnea %>%
  mutate(e_con = fct_recode(factor(e_con),
                              "Unión Libre" = "1",
                              "Separado" = "2",
                              "Divorciado" = "3",
                              "Viudo" = "4",
                              "Casado" = "5",
                              "Soltero" = "6",
                              "UWU" = "9"))

Generación de gráficas

Teniendo la base de datos ya preparada, comenazamos con la generación de gráficas. En este caso, mostraremos la información en datos porcentuales sobre el estado conyugal de la PNEA.

ggplot(pnea) + aes(x = e_con, y = ..prop.. * 100, group =1) + geom_bar(position = "dodge", stat = "count") +
  xlab("Estado conyugal") + ylab("Porcentaje") + ggtitle("Estado conyugal de la Población No Económicamente Activa (PNEA)") + labs(caption = "Fuente: Encuesta Nacional de Ocupación y Empleo (ENOE), 2023 \nNOTA: UWU se refiere a datos no especificados") +
  geom_text(aes(label = scales::percent(..prop..)), stat = 'count', vjust = -0.5, position = position_dodge(0.5), size = 4) +  
  theme_fivethirtyeight(base_size = 10) + 
  theme(plot.title = element_text(hjust = 0.5)) + scale_y_continuous(labels = comma)  +
  theme(axis.text=element_text(size=10),
        axis.title=element_text(size=8,face="bold"), plot.caption = element_text(hjust = 0))

Nota: La información sobre la ENOE se descargó del siguiente enlace https://www.inegi.org.mx/programas/enoe/15ymas/