El análisis del mercado laboral y del nivel de bienestar económico de la población ocupada requiere evaluar no solo la evolución nominal del ingreso, sino también su poder adquisitivo real. En periodos inflacionarios, las variaciones en el nivel general de precios pueden erosionar sensiblemente la capacidad de compra del salario, generando heterogeneidades sectoriales según la rama de actividad económica.
El presente proyecto analiza los microdatos de la Encuesta Permanente de Hogares Continua (EPHC) elaborada por el Instituto Nacional de Estadística (INE) de Paraguay para el quinquenio reciente (2022–2025).
Cuantificar el efecto de la inflación y la pérdida del poder adquisitivo sobre los ingresos salariales de la población ocupada en Paraguay durante el periodo 2022–2025.
e01aimde)
deflactándolo por el Índice de Precios al Consumidor (IPC) para calcular
el salario real por sector.Los microdatos analizados corresponden a los registros oficiales del Instituto Nacional de Estadística (INE).
library(data.table)
library(readr)
library(dplyr)
library(ggplot2)
library(knitr)
# Ruta del espacio de trabajo local
ruta <- "C:/Users/fagu_/Desktop/Trabajo Prático Analítica de Big Data/Trabajo Práctico/"
EPHC2022 <- read_delim(paste0(ruta, "REG02_EPHC_ANUAL_2022.csv"),
delim = ";", escape_double = FALSE, locale = locale(decimal_mark = ",",
grouping_mark = "."), trim_ws = TRUE)
EPHC2022 <- as.data.table(EPHC2022)
EPHC2023 <- read_delim(paste0(ruta, "REG02_EPHC_ANUAL_2023.csv"),
delim = ";", escape_double = FALSE, locale = locale(decimal_mark = ",",
grouping_mark = "."), trim_ws = TRUE)
EPHC2023 <- as.data.table(EPHC2023)
EPHC2024 <- read_delim(paste0(ruta, "REG02_EPHC_ANUAL_2024.csv"),
delim = ";", escape_double = FALSE, locale = locale(decimal_mark = ",",
grouping_mark = "."), trim_ws = TRUE)
EPHC2024 <- as.data.table(EPHC2024)
EPHC2025 <- read_delim(paste0(ruta, "REG02_EPHC_ANUAL_2025.csv"),
delim = ";", escape_double = FALSE, locale = locale(decimal_mark = ",",
grouping_mark = "."), trim_ws = TRUE)
EPHC2025 <- as.data.table(EPHC2025)
# Unir todas las bases anuales en una compilada única
EPHC <- rbind(EPHC2022, EPHC2023, EPHC2024, EPHC2025)
# Distribución inicial de las filas consolidadas por año
table(EPHC$AÑO)
##
## 2022 2023 2024 2025
## 61912 58005 57744 55934
Al explorar el campo de ingresos e01aimde se identifican
registros nulos o valores extremos (superiores a 500 millones) que
corresponden a distorsiones como liquidaciones, finiquitos o errores de
registro que alteran las métricas salariales recurrentes.
# Filtrado de salarios válidos, PEA activa ocupada y códigos válidos de rama económica
EPHCF <- EPHC[e01aimde > 0 & e01aimde < 90000000 & PEAA == 1 & RAMA_PEA > 1 & RAMA_PEA < 99]
# Resumen estadístico del ingreso nominal depurado
summary(EPHCF$e01aimde)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 14989 1418815 2450080 2871184 3397453 89719408
# Diccionario de mapeo estructural para las categorías de la variable RAMA_PEA
descripcion_ramas <- data.table(
RAMA_PEA = c(2, 3, 4, 5, 6, 7, 8),
RAMA_DESC = c(
"Industrias manufactureras",
"Electricidad, gas y agua",
"Construcciones",
"Comercio, restaurantes y hoteles",
"Transporte, almacenamiento y comunicaciones",
"Finanzas, seguros e inmuebles",
"Servicios comunales, sociales y personales"
)
)
# Integración del diccionario al dataset de trabajo
EPHCF <- merge(EPHCF, descripcion_ramas, by = "RAMA_PEA", all.x = TRUE)
EPHCF[, RAMA_DESC := as.factor(RAMA_DESC)]
Utilizando los valores de inflación del Banco Central del Paraguay (BCP), ajustamos el ingreso nominal principal dividiéndolo por el deflactor correspondiente para homogeneizar el poder de compra.
# Asignación de factores de ajuste basados en la inflación acumulada del BCP
factores_ipc <- data.table(
AÑO = c(2022, 2023, 2024, 2025),
FACTOR_DEFLACTOR = c(1.0701, 1.0701, 1.0310, 1.0000)
)
EPHCF[, AÑO := as.numeric(AÑO)]
EPHCF <- merge(EPHCF, factores_ipc, by = "AÑO", all.x = TRUE)
# Obtención de la variable objetivo ajustada por IPC
EPHCF[, salario_real := e01aimde / FACTOR_DEFLACTOR]
# Comparativo agregado anual de evolución salarial
resumen_salarios <- EPHCF[, .(
`Salario Nominal Promedio` = mean(e01aimde, na.rm = TRUE),
`Salario Real Promedio` = mean(salario_real, na.rm = TRUE)
), by = AÑO][order(AÑO)]
kable(resumen_salarios, digits = 0, caption = "Comparativa de Ingreso Promedio Nacional: Nominal vs. Real")
| AÑO | Salario Nominal Promedio | Salario Real Promedio |
|---|---|---|
| 2022 | 2651297 | 2477617 |
| 2023 | 2780875 | 2598705 |
| 2024 | 2951394 | 2862652 |
| 2025 | 3096618 | 3096618 |
# Agrupación y cálculo de métricas de pérdida del poder de compra
analisis_sectorial <- EPHCF[, .(
Ocupados_Muestra = .N,
Ingreso_Nominal = mean(e01aimde, na.rm = TRUE),
Ingreso_Real = mean(salario_real, na.rm = TRUE)
), by = .(RAMA_DESC, AÑO)][order(RAMA_DESC, AÑO)]
analisis_sectorial[, Perdida_Poder_Compra := Ingreso_Real - Ingreso_Nominal]
# Pivotar datos temporales para evaluar variaciones absolutas del periodo
tabla_evolucion <- dcast(
analisis_sectorial,
RAMA_DESC ~ AÑO,
value.var = c("Ingreso_Nominal", "Ingreso_Real")
)
# Cálculo de la variación porcentual del salario real (2025 vs 2022)
tabla_evolucion[, Variacion_Real_Pct := ((Ingreso_Real_2025 - Ingreso_Real_2022) / Ingreso_Real_2022) * 100]
# Despliegue de resultados estructurados para evaluación sectorial
kable(
tabla_evolucion[, .(RAMA_DESC, `Ingreso Real 2022` = Ingreso_Real_2022, `Ingreso Real 2025` = Ingreso_Real_2025, `Variación Real %` = Variacion_Real_Pct)],
digits = 2,
caption = "Evolución y Variación Porcentual del Salario Real Promedio por Sector"
)
| RAMA_DESC | Ingreso Real 2022 | Ingreso Real 2025 | Variación Real % |
|---|---|---|---|
| Comercio, restaurantes y hoteles | 2116063 | 2703480 | 27.76 |
| Construcciones | 2404979 | 2990297 | 24.34 |
| Electricidad, gas y agua | 6922584 | 8630276 | 24.67 |
| Finanzas, seguros e inmuebles | 3646066 | 4297269 | 17.86 |
| Industrias manufactureras | 2272662 | 3039769 | 33.75 |
| Servicios comunales, sociales y personales | 2519772 | 3101705 | 23.09 |
| Transporte, almacenamiento y comunicaciones | 3264532 | 3745256 | 14.73 |
A continuación, evaluamos gráficamente la brecha generada por el fenómeno inflacionario sobre los ingresos de la fuerza laboral, mostrando qué actividades absorbieron con mayor severidad la pérdida del poder adquisitivo.
ggplot(analisis_sectorial[AÑO == 2024], aes(x = reorder(RAMA_DESC, Perdida_Poder_Compra), y = Perdida_Poder_Compra, fill = Perdida_Poder_Compra)) +
geom_bar(stat = "identity", width = 0.7) +
coord_flip() +
scale_fill_gradient(low = "#e74c3c", high = "#f39c12") +
labs(
title = "Brecha por Inflación: Pérdida del Poder Adquisitivo por Sector Económico",
subtitle = "Diferencia neta registrada entre el ingreso real y el nominal (EPHC)",
x = "Rama de Actividad Económica",
y = "Brecha en Guaraníes Ajustados",
fill = "Magnitud de la Pérdida"
) +
theme_minimal(base_size = 12) +
theme(
plot.title = element_text(face = "bold", size = 14),
axis.title = element_text(face = "bold"),
panel.grid.minor = element_blank(),
legend.position = "right"
)