El Producto Interno Bruto (PIB) es uno de los principales indicadores macroeconómicos utilizados para medir la actividad económica de un país, ya que refleja el valor total de los bienes y servicios producidos en un periodo determinado.
El análisis del PIB permite identificar tendencias de crecimiento, periodos de expansión y contracción económica, así como evaluar el desempeño general de la economía a lo largo del tiempo.
En esta práctica se trabajará con una serie de tiempo del PIB de México, con el objetivo de procesar la información trimestral, construir un indicador anual mediante el promedio de los cuatro trimestres y calcular la tasa de crecimiento económico.
A través del uso de R, se aplicarán herramientas de limpieza de datos, estadística descriptiva y visualización, con la finalidad de interpretar el comportamiento del crecimiento económico y reconocer patrones relevantes en la dinámica económica del país.
# Borra todos los objetos del entorno
rm(list = ls())
# Libera memoria
gc()
## used (Mb) gc trigger (Mb) max used (Mb)
## Ncells 544045 29.1 1211184 64.7 686460 36.7
## Vcells 994116 7.6 8388608 64.0 1876157 14.4
# Muestra en qué carpeta estás trabajando
getwd()
## [1] "C:/Users/brand/Desktop/iCloudDrive/DESK2025SAID/CLASES 20262/LABORATORIO 4/practica9a"
#Ubicar carpeta en la pestaña de Session > Set working > Choose
install.packages(c("readxl", "openxlsx"))
library(readxl)
## Warning: package 'readxl' was built under R version 4.4.3
library(openxlsx)
## Warning: package 'openxlsx' was built under R version 4.4.3
pib <- read_excel("PIB_A.xlsx", sheet = "Página 1", skip = 7, col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
head(pib)
## # A tibble: 6 × 2
## ...1 ...2
## <chr> <dbl>
## 1 1990 1T 12307182.
## 2 1990 2T 12654375.
## 3 1990 3T 12289241.
## 4 1990 4T 12931144.
## 5 1991 1T 12713377.
## 6 1991 2T 13349246.
colnames(pib) <- c("Periodo", "PIB")
pib$PIB <- as.numeric(pib$PIB)
pib$Anio <- substr(pib$Periodo, 1, 4)
pib$Anio <- as.numeric(pib$Anio)
## Warning: NAs introducidos por coerción
pib <- na.omit(pib)
head(pib)
## # A tibble: 6 × 3
## Periodo PIB Anio
## <chr> <dbl> <dbl>
## 1 1990 1T 12307182. 1990
## 2 1990 2T 12654375. 1990
## 3 1990 3T 12289241. 1990
## 4 1990 4T 12931144. 1990
## 5 1991 1T 12713377. 1991
## 6 1991 2T 13349246. 1991
pib_anual <- aggregate(PIB ~ Anio, data = pib, FUN = mean)
head(pib_anual)
## Anio PIB
## 1 1990 12545486
## 2 1991 13044282
## 3 1992 13509782
## 4 1993 13897108
## 5 1994 14507764
## 6 1995 13650312
pib_anual$Crecimiento <- c(NA,
diff(pib_anual$PIB) / pib_anual$PIB[-nrow(pib_anual)] * 100)
head(pib_anual)
## Anio PIB Crecimiento
## 1 1990 12545486 NA
## 2 1991 13044282 3.975905
## 3 1992 13509782 3.568614
## 4 1993 13897108 2.866999
## 5 1994 14507764 4.394128
## 6 1995 13650312 -5.910300
resumen_pib <- summary(pib_anual$PIB)
resumen_crecimiento <- summary(pib_anual$Crecimiento)
resumen_pib
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 12545486 16023574 18929251 18695504 21630794 24176670
resumen_crecimiento
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -8.354 1.004 2.603 1.963 3.874 7.199 1
plot(pib_anual$Anio, pib_anual$PIB,
type = "b",
main = "PIB constante en México 1990 a 2020",
xlab = "Año",
ylab = "PIB",
col = "blue")
plot(pib_anual$Anio, pib_anual$Crecimiento,
type = "b",
main = "Tasa de crecimiento del PIB 1990 a 2020",
xlab = "Año",
ylab = "Crecimiento (%)",
col = "darkgreen")
abline(h = 0, col = "red")
resumen_pib_df <- data.frame(
Estadistica = names(resumen_pib),
PIB_Anual = as.numeric(resumen_pib)
)
resumen_crecimiento_df <- data.frame(
Estadistica = names(resumen_crecimiento),
Crecimiento = as.numeric(resumen_crecimiento)
)
wb <- createWorkbook()
addWorksheet(wb, "PIB_Anual")
addWorksheet(wb, "Resumen_PIB")
addWorksheet(wb, "Resumen_Crecimiento")
writeData(wb, "PIB_Anual", pib_anual)
writeData(wb, "Resumen_PIB", resumen_pib_df)
writeData(wb, "Resumen_Crecimiento", resumen_crecimiento_df)
saveWorkbook(wb, "PIB_resultados.xlsx", overwrite = TRUE)