Universidad de El Salvador · Facultad Multidisciplinaria
Oriental
Asignatura: Métodos para el Análisis Económico ·
MAE 118
Fuente: Banco Central de Reserva de El Salvador (BCR).
Consulta: 28 de octubre de 2026.
La actividad económica puede aumentar sin que todas las actividades crezcan al mismo ritmo. Por eso, además de observar el IVAE total, conviene revisar agricultura, industria, construcción y servicios. Este trabajo estudia los meses disponibles de 2026 y organiza las actividades en los sectores primario, secundario y terciario.
El IVAE permite dar seguimiento mensual a la producción. El PIB por demanda complementa esa información al mostrar el comportamiento del consumo, la inversión fija, las exportaciones y las importaciones. Ambos se expresan en índices de volumen; no representan precios ni valores monetarios.
Pregunta de investigación: ¿Cómo se comporta el crecimiento de la actividad económica de El Salvador durante enero–julio de 2026 y qué diferencias se observan entre sus actividades?
Objetivo: describir el crecimiento frente al año anterior y su dirección reciente mediante dos indicadores sencillos: la variación interanual y el promedio móvil de tres meses de esa variación.
En este documento, la calidad del crecimiento se observa de manera limitada: se revisa si la mejora se mantiene y si aparece en distintas actividades. Para evaluar bienestar, empleo, productividad o distribución del ingreso harían falta otros datos.
Se utiliza el Excel del BCR “Índice de Volumen de la Actividad Económica (IVAE). Serie original”, aportado por el estudiante. Contiene enero de 2024–julio de 2026. Los resultados del artículo corresponden únicamente a enero–julio de 2026. Los datos anteriores se conservan para hacer las comparaciones y calcular el promedio de los primeros meses del año.
El complemento del PIB utiliza la serie original de índices de volumen encadenados, referencia 2014, desde el primer trimestre de 2025 hasta el segundo de 2026. Se presentan los dos trimestres disponibles de 2026. Las cifras de 2026 son estimadas (e) y pueden revisarse. La nota del IVAE informa revisiones a junio de 2026 y armonización al segundo trimestre de 2026.
¿Por qué usar la serie original? Permite comparar cada mes con el mismo mes del año anterior. Esta comparación reduce la influencia de patrones estacionales que se repiten, pero no elimina todos los efectos de calendario ni los cambios en la estacionalidad. El trabajo se concentra en comparaciones interanuales.
Las tasas se calculan con los índices redondeados del Excel; pueden presentar pequeñas diferencias respecto a las tasas oficiales calculadas con mayor precisión. El análisis es descriptivo y no establece causas.
| Sector | Actividades incluidas en el archivo del BCR |
|---|---|
| Sector 1. Primario | Agricultura, ganadería, silvicultura y pesca. |
| Sector 2. Secundario | IPI —manufactura, minas y canteras y otras actividades industriales—; construcción. |
| Sector 3. Terciario | Comercio, transporte, almacenamiento, alojamiento y comidas; información y comunicaciones; finanzas y seguros; actividades inmobiliarias; servicios profesionales, técnicos, administrativos, de apoyo y otros; administración pública, defensa, enseñanza, salud y asistencia social. |
Se respeta el IPI tal como viene publicado: la minería permanece dentro de ese grupo industrial. Algunas etiquetas se acortan en los cuadros para facilitar su lectura. Las actividades se muestran por separado dentro de cada sector. No se suman ni se promedian sus índices para construir un nuevo índice sectorial, porque se necesitarían las ponderaciones y el método de agregación oficiales.
| Indicador | Cálculo | Unidad y frecuencia | ¿Para qué sirve? |
|---|---|---|---|
| 1. Variación interanual | (índice actual / índice de hace 12 meses − 1) × 100 |
Porcentaje; mensual en el IVAE. En el PIB se compara con cuatro trimestres antes. | Saber cuánto aumentó o disminuyó la actividad respecto al mismo período del año anterior. |
| 2. Promedio móvil de tres meses de la variación interanual | (tasa actual + tasa del mes anterior + tasa de dos meses antes) / 3 |
Porcentaje; mensual, solo para el IVAE. | Suavizar cambios aislados y observar la dirección reciente del crecimiento interanual. |
Ejemplo del primer indicador: si un índice pasa de 100 a 105 entre julio de un año y julio del siguiente, la variación interanual es 5 %. Ejemplo del segundo: si las últimas tres tasas fueron 4 %, 5 % y 6 %, su promedio es 5 %.
El promedio se asigna al último mes de su ventana. Por ejemplo, el dato de julio resume mayo, junio y julio. Es el promedio de tres tasas interanuales, no una tasa trimestral ni el crecimiento acumulado del período. Tampoco separa formalmente tendencia, ciclo, estacionalidad o irregularidad.
La ruta principal es la que utiliza el estudiante en su computadora. Si esa ruta no existe, el código busca la copia datos_ivae_original.xlsx que acompaña al Rmd. El Excel permanece sin modificaciones.
# PASO 2. Leer tu archivo con un nombre corto: datos.
ruta <- "C:/Users/isaac/OneDrive - Universidad Gerardo Barrios/Escritorio/Índice_de_Volumen_de_la_Actividad_Económica_(IVAE)._Serie_original.xlsx"
# Esta alternativa permite abrir el proyecto en otra computadora.
if (!file.exists(ruta)) {
ruta <- "datos_ivae_original.xlsx"
}
# Saltamos los 5 encabezados y leemos las 10 actividades.
datos <- read_excel(ruta, skip = 5, n_max = 10, col_names = FALSE)
# Comprobamos el tamaño de este Excel: 10 filas y 32 columnas.
stopifnot(nrow(datos) == 10, ncol(datos) == 32)
# PASO 3. Poner fechas y nombres cortos.
fechas <- seq(as.Date("2024-01-01"), as.Date("2026-07-01"), by = "month")
names(datos) <- c("actividad", as.character(fechas))
datos$actividad <- c("IVAE total", "Agropecuario",
"Industria (IPI)", "Construcción",
"Comercio y actividades relacionadas",
"Información y comunicaciones",
"Finanzas y seguros", "Actividades inmobiliarias",
"Servicios profesionales y otros",
"Administración pública, enseñanza y salud")
datos$sector <- c("Total", "Primario", "Secundario", "Secundario",
"Terciario", "Terciario", "Terciario", "Terciario",
"Terciario", "Terciario")
# PASO 4. Dejar una fila por actividad y mes.
ivae <- datos |>
pivot_longer(cols = -c(actividad, sector),
names_to = "fecha", values_to = "indice") |>
mutate(fecha = as.Date(fecha)) |>
arrange(actividad, fecha)
# No debe faltar ningún índice ni repetirse una actividad en un mes.
stopifnot(!anyNA(ivae$indice),
!anyDuplicated(ivae[c("actividad", "fecha")]))
Cómo leer estos nombres: datos es el
Excel; ivae es la base ordenada; actividad
identifica cada grupo; sector indica a qué sector
pertenece; fecha identifica el mes; e indice
es el valor publicado por el BCR. El símbolo |>
significa “tomar este resultado y continuar con el siguiente paso”.
Primero se calcula cada actividad por separado.
lag(indice, 12) toma el índice de doce meses antes. Es
necesario conservar 2024 y 2025 al calcular; el filtro de 2026 se aplica
después.
# PASO 5. Calcular el primer indicador.
ivae <- ivae |>
group_by(actividad) |>
arrange(fecha, .by_group = TRUE) |>
mutate(interanual = (indice / lag(indice, 12) - 1) * 100) |>
ungroup()
# PASO 6. Mostrar solamente los meses de 2026.
resumen <- ivae |>
filter(fecha >= as.Date("2026-01-01"),
fecha <= as.Date("2026-07-01"))
# Nombres de los meses para las tablas y los gráficos.
meses <- c("Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul")
fechas2026 <- seq(as.Date("2026-01-01"), as.Date("2026-07-01"), by = "month")
resumen$mes <- meses[as.numeric(format(resumen$fecha, "%m"))]
# PASO 7. Separar el total y los tres sectores.
total <- filter(resumen, sector == "Total")
sector1 <- filter(resumen, sector == "Primario")
sector2 <- filter(resumen, sector == "Secundario")
sector3 <- filter(resumen, sector == "Terciario")
Una tasa positiva significa un nivel mayor que en el mismo mes de 2025. Una tasa negativa significa un nivel menor. Una caída de la tasa que permanece positiva significa que la actividad sigue creciendo interanualmente, pero a menor ritmo.
# Gráfico del crecimiento respecto al mismo mes de 2025.
ggplot(total, aes(x = fecha, y = interanual)) +
geom_hline(yintercept = 0, color = "grey65") +
geom_line(color = "#70243e", linewidth = 0.9) +
geom_point(color = "#70243e", size = 2) +
scale_x_date(breaks = fechas2026, labels = meses) +
labs(title = "IVAE total", x = NULL,
y = "Variación interanual (%)")
Gráfico 1. Variación interanual: IVAE total. Enero–julio de 2026 (%)
# Cuadro con los mismos resultados del gráfico.
total |>
select(Actividad = actividad, mes, interanual) |>
pivot_wider(names_from = mes, values_from = interanual) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 1. Variación interanual: IVAE total (%)")
| Actividad | Ene | Feb | Mar | Abr | May | Jun | Jul |
|---|---|---|---|---|---|---|---|
| IVAE total | 4,14 | 3,82 | 4,65 | 5,22 | 4,71 | 5,59 | 5,48 |
Fuente: elaboración propia con el IVAE original del BCR. Cifras de 2026 estimadas.
El IVAE total pasó de 4,14 % en enero a 5,48 % en julio. En junio había alcanzado 5,59 %. La actividad de julio fue mayor que la de julio de 2025; la tasa de julio fue ligeramente menor que la de junio, sin que eso implique una caída mensual del nivel.
# Gráfico del crecimiento respecto al mismo mes de 2025.
ggplot(sector1, aes(x = fecha, y = interanual)) +
geom_hline(yintercept = 0, color = "grey65") +
geom_line(color = "#70243e", linewidth = 0.9) +
geom_point(color = "#70243e", size = 2) +
scale_x_date(breaks = fechas2026, labels = meses) +
labs(title = "Sector 1. Primario", x = NULL,
y = "Variación interanual (%)")
Gráfico 2. Variación interanual: Sector 1. Primario. Enero–julio de 2026 (%)
# Cuadro con los mismos resultados del gráfico.
sector1 |>
select(Actividad = actividad, mes, interanual) |>
pivot_wider(names_from = mes, values_from = interanual) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 2. Variación interanual: Sector 1. Primario (%)")
| Actividad | Ene | Feb | Mar | Abr | May | Jun | Jul |
|---|---|---|---|---|---|---|---|
| Agropecuario | -0,84 | -0,69 | 0,43 | -0,44 | -1,8 | -0,66 | -0,76 |
Fuente: elaboración propia con el IVAE original del BCR. Cifras de 2026 estimadas.
El grupo agropecuario registró −0,76 % en julio. Sus tasas fueron negativas en seis de los siete meses observados; marzo mostró una variación positiva pequeña. Esto señala una debilidad de esta agrupación frente a los mismos meses de 2025.
# Gráfico del crecimiento respecto al mismo mes de 2025.
ggplot(sector2, aes(x = fecha, y = interanual)) +
geom_hline(yintercept = 0, color = "grey65") +
geom_line(color = "#70243e", linewidth = 0.9) +
geom_point(color = "#70243e", size = 2) +
facet_wrap(~actividad, ncol = 2, labeller = label_wrap_gen(27)) +
scale_x_date(breaks = fechas2026, labels = meses) +
labs(title = "Sector 2. Secundario", x = NULL,
y = "Variación interanual (%)")
Gráfico 3. Variación interanual: Sector 2. Secundario. Enero–julio de 2026 (%)
# Cuadro con los mismos resultados del gráfico.
sector2 |>
select(Actividad = actividad, mes, interanual) |>
pivot_wider(names_from = mes, values_from = interanual) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 3. Variación interanual: Sector 2. Secundario (%)")
| Actividad | Ene | Feb | Mar | Abr | May | Jun | Jul |
|---|---|---|---|---|---|---|---|
| Construcción | 23,96 | 9,96 | 3,39 | 19,12 | 11,36 | 10,49 | 14,61 |
| Industria (IPI) | 4,14 | 2,63 | 4,50 | 4,46 | 1,98 | 5,25 | 4,25 |
Fuente: elaboración propia con el IVAE original del BCR. Cifras de 2026 estimadas.
En julio, la construcción creció 14,61 % y la industria 4,25 % frente a julio de 2025. La construcción tuvo una tasa mayor, pero estas tasas por sí solas no indican qué actividad aportó más al crecimiento total.
# Gráfico del crecimiento respecto al mismo mes de 2025.
ggplot(sector3, aes(x = fecha, y = interanual)) +
geom_hline(yintercept = 0, color = "grey65") +
geom_line(color = "#70243e", linewidth = 0.9) +
geom_point(color = "#70243e", size = 2) +
facet_wrap(~actividad, ncol = 2, labeller = label_wrap_gen(27)) +
scale_x_date(breaks = fechas2026, labels = meses) +
labs(title = "Sector 3. Terciario", x = NULL,
y = "Variación interanual (%)")
Gráfico 4. Variación interanual: Sector 3. Terciario. Enero–julio de 2026 (%)
# Cuadro con los mismos resultados del gráfico.
sector3 |>
select(Actividad = actividad, mes, interanual) |>
pivot_wider(names_from = mes, values_from = interanual) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 4. Variación interanual: Sector 3. Terciario (%)")
| Actividad | Ene | Feb | Mar | Abr | May | Jun | Jul |
|---|---|---|---|---|---|---|---|
| Actividades inmobiliarias | 2,60 | 3,04 | 4,30 | 5,57 | 6,32 | 6,27 | 5,98 |
| Administración pública, enseñanza y salud | 0,18 | 3,10 | 3,93 | 4,19 | 4,75 | 11,42 | 8,57 |
| Comercio y actividades relacionadas | 4,10 | 4,93 | 6,28 | 3,46 | 5,81 | 4,61 | 4,64 |
| Finanzas y seguros | 1,33 | 3,33 | 5,66 | 3,13 | 5,48 | 1,96 | 0,24 |
| Información y comunicaciones | -2,16 | 4,14 | 5,45 | 5,07 | 4,12 | 7,76 | 6,35 |
| Servicios profesionales y otros | 3,81 | 1,84 | 4,36 | 2,91 | 3,42 | 1,98 | 1,90 |
Fuente: elaboración propia con el IVAE original del BCR. Cifras de 2026 estimadas.
En julio todas las agrupaciones de servicios mostraron tasas positivas, aunque diferentes. Administración pública, enseñanza y salud alcanzó 8,57 %; información y comunicaciones 6,35 %; y finanzas y seguros 0,24 %. Comercio y actividades relacionadas creció 4,64 %. No corresponde atribuir el resultado del grupo público a cada una de sus actividades por separado.
Este cálculo utiliza la variación interanual del mes actual y las de
los dos meses anteriores. Por eso se calcula sobre ivae,
que conserva todo el historial, antes de seleccionar nuevamente
2026.
# PASO 8. Calcular el segundo indicador por actividad.
ivae <- ivae |>
group_by(actividad) |>
arrange(fecha, .by_group = TRUE) |>
mutate(promedio = (interanual + lag(interanual, 1) +
lag(interanual, 2)) / 3) |>
ungroup()
# PASO 9. Volver a seleccionar 2026, ahora con los dos indicadores.
resumen <- ivae |>
filter(fecha >= as.Date("2026-01-01"),
fecha <= as.Date("2026-07-01"))
resumen$mes <- meses[as.numeric(format(resumen$fecha, "%m"))]
total <- filter(resumen, sector == "Total")
sector1 <- filter(resumen, sector == "Primario")
sector2 <- filter(resumen, sector == "Secundario")
sector3 <- filter(resumen, sector == "Terciario")
# En 2026 los dos indicadores deben tener 70 resultados completos.
stopifnot(nrow(resumen) == 70,
!anyNA(resumen$interanual), !anyNA(resumen$promedio))
En los gráficos, la línea gris muestra la variación interanual de cada mes y la línea vino su promedio de tres meses. Una línea vino ascendente sugiere que el ritmo interanual reciente mejora; una línea descendente sugiere que pierde fuerza. Es una señal descriptiva, no una estimación formal de tendencia.
# Comparar la tasa mensual interanual con su promedio de tres meses.
ggplot(total, aes(x = fecha)) +
geom_hline(yintercept = 0, color = "grey75") +
geom_line(aes(y = interanual, color = "Interanual"), linewidth = 0.6) +
geom_line(aes(y = promedio, color = "Promedio de 3 meses"), linewidth = 1) +
geom_point(aes(y = promedio, color = "Promedio de 3 meses"), size = 2) +
scale_color_manual(values = c("Interanual" = "#aaa0a5",
"Promedio de 3 meses" = "#70243e")) +
scale_x_date(breaks = fechas2026, labels = meses) +
labs(title = "IVAE total", x = NULL, y = "Porcentaje (%)")
Gráfico 5. Variación interanual y su promedio de tres meses: IVAE total. Enero–julio de 2026 (%)
# Cuadro del segundo indicador.
total |>
select(Actividad = actividad, mes, promedio) |>
pivot_wider(names_from = mes, values_from = promedio) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 5. Promedio móvil de la variación interanual: IVAE total (%)")
| Actividad | Ene | Feb | Mar | Abr | May | Jun | Jul |
|---|---|---|---|---|---|---|---|
| IVAE total | 4,53 | 4,38 | 4,2 | 4,56 | 4,86 | 5,17 | 5,26 |
Fuente: elaboración propia con el IVAE original del BCR. Promedio retrospectivo de tres tasas interanuales.
El promedio del IVAE total fue 4,53 % en enero, bajó a 4,20 % en marzo y llegó a 5,26 % en julio. La lectura conjunta muestra una mejora del ritmo interanual promedio después de marzo. El dato de julio resume las tasas de mayo, junio y julio.
# Comparar la tasa mensual interanual con su promedio de tres meses.
ggplot(sector1, aes(x = fecha)) +
geom_hline(yintercept = 0, color = "grey75") +
geom_line(aes(y = interanual, color = "Interanual"), linewidth = 0.6) +
geom_line(aes(y = promedio, color = "Promedio de 3 meses"), linewidth = 1) +
geom_point(aes(y = promedio, color = "Promedio de 3 meses"), size = 2) +
scale_color_manual(values = c("Interanual" = "#aaa0a5",
"Promedio de 3 meses" = "#70243e")) +
scale_x_date(breaks = fechas2026, labels = meses) +
labs(title = "Sector 1. Primario", x = NULL, y = "Porcentaje (%)")
Gráfico 6. Variación interanual y su promedio de tres meses: Sector 1. Primario. Enero–julio de 2026 (%)
# Cuadro del segundo indicador.
sector1 |>
select(Actividad = actividad, mes, promedio) |>
pivot_wider(names_from = mes, values_from = promedio) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 6. Promedio móvil de la variación interanual: Sector 1. Primario (%)")
| Actividad | Ene | Feb | Mar | Abr | May | Jun | Jul |
|---|---|---|---|---|---|---|---|
| Agropecuario | 0,8 | 0,54 | -0,37 | -0,23 | -0,6 | -0,97 | -1,07 |
Fuente: elaboración propia con el IVAE original del BCR. Promedio retrospectivo de tres tasas interanuales.
El promedio agropecuario llegó a −1,07 % en julio y fue negativo desde marzo. La señal de debilidad también aparece al suavizar las tasas, por lo que conviene seguir esta agrupación en las próximas publicaciones.
# Comparar la tasa mensual interanual con su promedio de tres meses.
ggplot(sector2, aes(x = fecha)) +
geom_hline(yintercept = 0, color = "grey75") +
geom_line(aes(y = interanual, color = "Interanual"), linewidth = 0.6) +
geom_line(aes(y = promedio, color = "Promedio de 3 meses"), linewidth = 1) +
geom_point(aes(y = promedio, color = "Promedio de 3 meses"), size = 2) +
facet_wrap(~actividad, ncol = 2, labeller = label_wrap_gen(27)) +
scale_color_manual(values = c("Interanual" = "#aaa0a5",
"Promedio de 3 meses" = "#70243e")) +
scale_x_date(breaks = fechas2026, labels = meses) +
labs(title = "Sector 2. Secundario", x = NULL, y = "Porcentaje (%)")
Gráfico 7. Variación interanual y su promedio de tres meses: Sector 2. Secundario. Enero–julio de 2026 (%)
# Cuadro del segundo indicador.
sector2 |>
select(Actividad = actividad, mes, promedio) |>
pivot_wider(names_from = mes, values_from = promedio) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 7. Promedio móvil de la variación interanual: Sector 2. Secundario (%)")
| Actividad | Ene | Feb | Mar | Abr | May | Jun | Jul |
|---|---|---|---|---|---|---|---|
| Construcción | 25,62 | 21,02 | 12,44 | 10,82 | 11,29 | 13,66 | 12,15 |
| Industria (IPI) | 4,12 | 4,16 | 3,76 | 3,87 | 3,65 | 3,90 | 3,83 |
Fuente: elaboración propia con el IVAE original del BCR. Promedio retrospectivo de tres tasas interanuales.
En julio, el promedio fue 12,15 % en construcción y 3,83 % en industria. La construcción mantuvo tasas interanuales promedio altas, aunque menores que al inicio del año. No puede interpretarse ese promedio como crecimiento trimestral.
# Comparar la tasa mensual interanual con su promedio de tres meses.
ggplot(sector3, aes(x = fecha)) +
geom_hline(yintercept = 0, color = "grey75") +
geom_line(aes(y = interanual, color = "Interanual"), linewidth = 0.6) +
geom_line(aes(y = promedio, color = "Promedio de 3 meses"), linewidth = 1) +
geom_point(aes(y = promedio, color = "Promedio de 3 meses"), size = 2) +
facet_wrap(~actividad, ncol = 2, labeller = label_wrap_gen(27)) +
scale_color_manual(values = c("Interanual" = "#aaa0a5",
"Promedio de 3 meses" = "#70243e")) +
scale_x_date(breaks = fechas2026, labels = meses) +
labs(title = "Sector 3. Terciario", x = NULL, y = "Porcentaje (%)")
Gráfico 8. Variación interanual y su promedio de tres meses: Sector 3. Terciario. Enero–julio de 2026 (%)
# Cuadro del segundo indicador.
sector3 |>
select(Actividad = actividad, mes, promedio) |>
pivot_wider(names_from = mes, values_from = promedio) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 8. Promedio móvil de la variación interanual: Sector 3. Terciario (%)")
| Actividad | Ene | Feb | Mar | Abr | May | Jun | Jul |
|---|---|---|---|---|---|---|---|
| Actividades inmobiliarias | 3,25 | 3,04 | 3,31 | 4,30 | 5,40 | 6,05 | 6,19 |
| Administración pública, enseñanza y salud | -1,67 | -0,02 | 2,40 | 3,74 | 4,29 | 6,79 | 8,25 |
| Comercio y actividades relacionadas | 5,05 | 4,44 | 5,10 | 4,89 | 5,19 | 4,63 | 5,02 |
| Finanzas y seguros | 1,94 | 2,74 | 3,44 | 4,04 | 4,76 | 3,52 | 2,56 |
| Información y comunicaciones | 0,46 | 1,41 | 2,48 | 4,88 | 4,88 | 5,65 | 6,08 |
| Servicios profesionales y otros | 4,61 | 3,61 | 3,34 | 3,04 | 3,56 | 2,77 | 2,43 |
Fuente: elaboración propia con el IVAE original del BCR. Promedio retrospectivo de tres tasas interanuales.
En julio, los promedios fueron 8,25 % en administración pública, enseñanza y salud; 6,19 % en actividades inmobiliarias; 6,08 % en información y comunicaciones; 5,02 % en comercio y actividades relacionadas; 2,56 % en finanzas y seguros; y 2,43 % en servicios profesionales y otros. La dirección reciente es distinta entre agrupaciones.
Se aplica el mismo indicador 1: variación
interanual. Como los datos son trimestrales,
lag(indice, 4) toma el mismo trimestre del año anterior.
Este apartado no incorpora un tercer indicador. El promedio móvil de
tres meses no se aplica a datos trimestrales.
# PASO 10. Leer el Excel original del PIB que acompaña al proyecto.
pib <- read_excel("datos_pib_original.xlsx", skip = 4,
n_max = 6, col_names = FALSE)
# Este archivo contiene seis variables y seis trimestres.
stopifnot(nrow(pib) == 6, ncol(pib) == 7)
names(pib) <- c("actividad", "2025-I", "2025-II", "2025-III",
"2025-IV", "2026-I", "2026-II")
pib$actividad <- c("PIB total", "Consumo privado", "Consumo público",
"Inversión fija (FBKF)", "Exportaciones", "Importaciones")
pib <- pib |>
pivot_longer(cols = -actividad, names_to = "trimestre",
values_to = "indice") |>
group_by(actividad) |>
mutate(interanual = (indice / lag(indice, 4) - 1) * 100) |>
ungroup()
# La exportación del BCR ya viene ordenada de 2025-I a 2026-II.
pib2026 <- pib |>
filter(trimestre %in% c("2026-I", "2026-II"))
pib2026 |>
select(Actividad = actividad, trimestre, interanual) |>
pivot_wider(names_from = trimestre, values_from = interanual) |>
kable(digits = 2, format.args = list(decimal.mark = ","),
caption = "Cuadro 9. PIB por demanda: variación interanual en 2026 (%)")
| Actividad | 2026-I | 2026-II |
|---|---|---|
| PIB total | 4,56 | 5,24 |
| Consumo privado | 3,56 | 3,68 |
| Consumo público | 1,91 | 4,02 |
| Inversión fija (FBKF) | 13,29 | 9,22 |
| Exportaciones | 5,28 | 3,21 |
| Importaciones | 8,04 | 5,33 |
ggplot(pib2026, aes(x = actividad, y = interanual, fill = trimestre)) +
geom_col(position = "dodge", width = 0.7) +
coord_flip() +
scale_fill_manual(values = c("2026-I" = "#b9879b", "2026-II" = "#70243e")) +
labs(title = "PIB y componentes de demanda", x = NULL,
y = "Variación interanual (%)")
Gráfico 9. PIB por demanda: variación interanual. Primer y segundo trimestre de 2026 (%)
Fuente: elaboración propia con el PIB trimestral original del BCR, índices de volumen encadenados, referencia 2014. Cifras de 2026 estimadas.
En el segundo trimestre, el PIB creció 5,24 % frente al mismo trimestre de 2025. El consumo privado aumentó 3,68 %, el público 4,02 %, la inversión fija 9,22 %, las exportaciones 3,21 % y las importaciones 5,33 %. Son tasas de cada componente, no aportes en puntos porcentuales al crecimiento del PIB.
El BCR aclara que los índices de inversión publicados corresponden a formación bruta de capital fijo (FBKF). No incluyen la variación de existencias. El crecimiento de importaciones indica mayor volumen importado; para determinar su incidencia neta se necesitaría un cálculo específico. Los índices encadenados no deben sumarse para reconstruir el PIB.
La actividad total mostró crecimiento interanual durante los siete meses analizados. Su tasa pasó de 4,14 % en enero a 5,48 % en julio, y el promedio móvil terminó en 5,26 %. En conjunto, las cifras señalan una mejora del ritmo interanual reciente después de marzo.
Esa mejora fue desigual. El grupo agropecuario mostró debilidad, mientras industria y construcción mantuvieron tasas positivas. En julio, la construcción presentó una tasa interanual mayor que la industria. Los servicios también tuvieron diferencias: las tasas de información y comunicaciones y del grupo de administración pública, enseñanza y salud superaron a las de finanzas y seguros.
El PIB por demanda ofrece una lectura complementaria: el consumo y la inversión fija aumentaron frente a los mismos trimestres de 2025. La inversión fija mantuvo un crecimiento interanual relativamente alto, aunque su tasa fue menor en el segundo trimestre que en el primero. Esta información no prueba qué componente explicó más el crecimiento agregado.
Los proyectos de inversión podrían influir en la construcción; los ingresos y el gasto de los hogares, en comercio y servicios; y el clima y los ciclos productivos, en el grupo agropecuario. Son hipótesis que deben contrastarse con otras fuentes: los dos indicadores calculados no identifican esas causas.
En las próximas publicaciones conviene observar si el promedio del IVAE total continúa mejorando, si el grupo agropecuario se recupera y si la expansión se mantiene en distintas actividades. Con datos hasta julio no se establece un pronóstico de crecimiento para todo 2026 ni se declara un cambio de ciclo económico.
El estudio utiliza siete meses y dos trimestres de resultados de 2026. Las cifras son estimadas y están sujetas a revisión. Las tasas interanuales dependen también del nivel observado un año antes, conocido como efecto de base. La comparación con el mismo mes del año anterior y el promedio móvil no eliminan todos los efectos estacionales o de calendario.
Los grupos del BCR contienen varias actividades que no pueden separarse con este Excel. Las diferencias entre tasas no equivalen a contribuciones al crecimiento. Tampoco permiten concluir, por sí solas, que mejoraron los salarios, el empleo o el bienestar.
Durante enero–julio de 2026, el IVAE total mostró crecimiento frente a los mismos meses de 2025 y una mejora reciente de su tasa interanual promedio. Sin embargo, el comportamiento fue diferente entre actividades: el grupo agropecuario permaneció débil y otras agrupaciones mostraron expansión.
Los dos indicadores permiten presentar una lectura sencilla: la variación interanual indica cuánto cambió la actividad respecto al año anterior; su promedio de tres meses ayuda a observar si ese ritmo reciente mejora o pierde fuerza. Una evaluación más completa de la calidad del crecimiento requeriría incorporar indicadores sociales y de productividad.