Cargar de los datos

#Cargar los datos
# Carga directa del objeto de datos previamente procesado
load("C:/Users/MINEDUCYT/Desktop/MAE118/comercio_exterior/data_comercio_exterior.RData")
#cargar librerias
library(readr)
library(dplyr)
library(tidyr)
library(kableExtra)
library(stringi)

Carga de las funciones especializadas

# Carga de script de funciones
source(
  file = "C:/Users/MINEDUCYT/Desktop/MAE118/comercio_exterior/base_comercio_exterior/funciones_comercio_exterior_1.R",
  echo = TRUE,
  max.deparse.length = 100,
  encoding = "utf-8"
)
## 
## > options(scipen = 999)
## 
## > library(dplyr)
## 
## > library(readxl)
## 
## > library(stringr)
## 
## > library(readxl)
## 
## > load("C:/Users/MINEDUCYT/Desktop/MAE118/comercio_exterior/data_comercio_exterior.RData")
## 
## > nombre_archivo <- "C:/Users/MINEDUCYT/Desktop/MAE118/comercio_exterior/nombres_iso_paises.xlsx"
## 
## > nombres_iso_paises <- read_excel(nombre_archivo)
## 
## > nombres_iso_paises$nom_pais_esp <- toupper(nombres_iso_paises$nom_pais_esp)
## 
## > data_comercio_exterior <- data_comercio_exterior %>% 
## +     left_join(nombres_iso_paises, by = c(p .... [TRUNCATED] 
## 
## > herramientas_mostrar_paises <- function() {
## +     paises <- nombres_iso_paises %>% select(nom_pais .... [TRUNCATED] 
## 
## > herramientas_mostrar_regiones <- function() {
## +     nombres_iso_paises %>% group_by(region, cod_re .... [TRUNCATED] 
## 
## > herramientas_mostrar_paises_en_tabla <- function() {
## +     data_comercio_exterior %>% group_by(pai .... [TRUNCATED] 
## 
## > indicadores_IVCR_capitulo <- function(codigo_pais, 
## +     capitulo, anio) {
## +     codigo_pais <- e .... [TRUNCATED] 
## 
## > indicadores_IVCR_partida <- function(codigo_pais, 
## +     partida, anio) {
## +     codigo_pais <- enq .... [TRUNCATED] 
## 
## > indicadores_Balassa_capitulo <- function(codigo_pais, 
## +     capitulo, anio, normalizado = TRUE) { .... [TRUNCATED] 
## 
## > indicadores_Balassa_partida <- function(codigo_pais, 
## +     partida, anio, normalizado = TRUE) {
## + .... [TRUNCATED] 
## 
## > indicadores_IHH_Herfindahl_Hirschmann_anual_texto <- function(codigo_pais, 
## +     anio, normalizad .... [TRUNCATED] 
## 
## > indicadores_IHH_Herfindahl_Hirschmann_anual <- function(codigo_pais, 
## +     anio, normalizado = TR .... [TRUNCATED]

Ejercicio_ 1

Con base en la información disponible en la “Base de Datos de Comercio Exterior” del BCR, incluida en el archivo .RData disponible para esta tarea, para los años 2022-2026. Genera una tabla tal como se mostró en las clases(aún no incluya los nombres ISO de los países). Muestre un head de 10 casos.

tabla_comercio_exterior <- data_comercio_exterior %>%
  filter(anio %in% 2022:2026) %>%
  group_by(pais, anio) %>%
  summarise(
    valor_fob_exportaciones = sum(valor_fob, na.rm = TRUE),
    kg_exportaciones = sum(kilogramos_exportaciones, na.rm = TRUE),
    valor_cif_importaciones = sum(valor_cif, na.rm = TRUE),
    kg_importaciones = sum(kilogramos_importaciones, na.rm = TRUE),
    .groups = "drop"
  ) %>%
  arrange(anio, desc(valor_fob_exportaciones))
kable(head(tabla_comercio_exterior, 10))
pais anio valor_fob_exportaciones kg_exportaciones valor_cif_importaciones kg_importaciones
ESTADOS UNIDOS DE AMERICA 2022 2759391726 699550794 5097313536 4359068008
GUATEMALA 2022 1213276504 699581746 1695597154 1731816152
HONDURAS 2022 1184754339 649766230 960383113 655401204
NICARAGUA 2022 496734066 377301670 439358876 266964573
COSTA RICA 2022 303491139 141167145 368146366 203958959
MEXICO 2022 188870736 51902613 1395484079 576363700
PANAMA 2022 144365944 66684990 58964124 27935434
REPUBLICA DOMINICANA 2022 110307229 64312625 17917998 7142400
ALEMANIA 2022 95515299 4472208 220034555 24412768
CANADA 2022 74213702 85810421 118209541 122460214

Ejercicio 2

Agregue la información estandarizada de los países (nombres iso de los países y regiones, etc, tal como se vio en clases). Muestre un head de 10 casos.

library(readxl)
iso_paises <- read_excel("comercio_exterior/nombres_iso_paises.xlsx")

tabla_comercio_exterior<- tabla_comercio_exterior %>%
  mutate(pais_norm = stri_trans_general(str_to_upper(pais), "Latin-ASCII"))

iso_paises <- iso_paises %>%
  mutate(pais_norm = stri_trans_general(str_to_upper(nom_pais_esp), "Latin-ASCII"))

comercio_iso <- tabla_comercio_exterior %>%
  left_join(
    iso_paises %>% select(pais_norm, iso_3, region, sub_region),
    by = "pais_norm"
  ) %>%
  select(-pais_norm) %>%
  relocate(iso_3, region, .after = pais)

kable(head(comercio_iso, 10))
pais iso_3 region anio valor_fob_exportaciones kg_exportaciones valor_cif_importaciones kg_importaciones sub_region
ESTADOS UNIDOS DE AMERICA USA Américas 2022 2759391726 699550794 5097313536 4359068008 América Del Norte
GUATEMALA GTM Américas 2022 1213276504 699581746 1695597154 1731816152 América Latina Y El Caribe
HONDURAS HND Américas 2022 1184754339 649766230 960383113 655401204 América Latina Y El Caribe
NICARAGUA NIC Américas 2022 496734066 377301670 439358876 266964573 América Latina Y El Caribe
COSTA RICA CRI Américas 2022 303491139 141167145 368146366 203958959 América Latina Y El Caribe
MEXICO MEX Américas 2022 188870736 51902613 1395484079 576363700 América Latina Y El Caribe
PANAMA PAN Américas 2022 144365944 66684990 58964124 27935434 América Latina Y El Caribe
REPUBLICA DOMINICANA DOM Américas 2022 110307229 64312625 17917998 7142400 América Latina Y El Caribe
ALEMANIA DEU Europa 2022 95515299 4472208 220034555 24412768 Europa Oriental
CANADA CAN Américas 2022 74213702 85810421 118209541 122460214 América Del Norte
comercio_iso <- tabla_comercio_exterior |> 
  left_join(
    iso_paises |>  
      mutate(pais_norm = stri_trans_general(str_to_upper(nom_pais_esp), "Latin-ASCII")) %>%
      select(pais_norm, iso_2, iso_3, region),
    by = c("pais" = "pais_norm")  # ← une directamente
  )

Ejercicio 3.

Obtenga un ranking, anual, de los 5 principales socios comerciales de ElSalvador, para el periodo 2022-2026.

#Seleccionar Años
anios_ranking<-2022:2026
data_comercio_exterior %>% 
  filter(anio %in% anios_ranking) ->data_ranking

data_ranking %>% 
  group_by(anio,iso_3) %>% 
  summarise(total=sum(valor_fob)) %>% mutate(percent=round(prop.table(total)*100,2)) %>% 
  
  # n=8 es lo que se cambia para el parcial.
  slice_max(n = 5,order_by = total) %>% 
  as.data.frame() %>% 
  group_by(anio) %>% 
  mutate(rank = row_number(),
         data=paste(iso_3,"|",percent,sep = "")) %>% 
  select(anio,data,rank) %>% as.data.frame() -> insumo_reporte

insumo_reporte %>% 
pivot_wider(names_from = rank,values_from = data)->tabla_ranking_iso

tabla_ranking_iso%>%
  kable(caption = paste("Top",5,"de Exportaciones periodo",
    min(anios_ranking),"-",max(anios_ranking))) %>%
  add_footnote(label = "Elaboración propia con base en datos del BCR")
Top 5 de Exportaciones periodo 2022 - 2026
anio 1 2 3 4 5
2022 USA|38.78 GTM|17.05 HND|16.65 NIC|6.98 CRI|4.27
2023 USA|35.6 GTM|18.45 HND|16.3 NIC|7.85 CRI|4.79
2024 USA|33.84 GTM|19.53 HND|16.14 NIC|8.94 CRI|4.71
2025 USA|32.45 GTM|19.64 HND|16.74 NIC|9.12 CRI|4.45
2026 USA|32.53 GTM|19.46 HND|15.44 NIC|8.7 CRI|4.51

Note: aElaboración propia con base en datos del BCR