Carga de Funciones
Especializadas
# Carga de script de funciones
source(file = "C:/Users/MINEDUCYT/Desktop/Practicas/funciones_comercio_exterior.R",echo = TRUE,max.deparse.length = 100,encoding = "utf-8")
##
## > options(scipen = 999)
##
## > library(dplyr)
##
## > library(readxl)
##
## > library(stringr)
##
## > load("C:/Users/MINEDUCYT/Desktop/Practicas/data_comercio_exterior.RData")
##
## > nombre_archivo <- "C:/Users/MINEDUCYT/Desktop/Practicas/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]
- 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.
Cargar base de
datos
# Carga directa del objeto de datos previamente procesado
load("C:/Users/MINEDUCYT/Desktop/Practicas/data_comercio_exterior.RData")
library(dplyr)
library(readxl)
library(stringr)
library(stringi)
library(tidyr)
library(knitr)
library(kableExtra)
kable(head(data_comercio_exterior, 10), format = "html") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), full_width = TRUE)
|
pais
|
sac
|
anio
|
mes
|
valor_cif
|
kilogramos_importaciones
|
valor_fob
|
kilogramos_exportaciones
|
|
AFGANISTAN
|
8708990000
|
2022
|
2
|
220.50
|
0.29
|
0
|
0
|
|
AFGANISTAN
|
8471900000
|
2022
|
5
|
665.90
|
4.00
|
0
|
0
|
|
AFGANISTAN
|
5702310000
|
2022
|
6
|
913.74
|
22.02
|
0
|
0
|
|
AFGANISTAN
|
5702502000
|
2022
|
6
|
566.35
|
11.36
|
0
|
0
|
|
AFGANISTAN
|
6111200000
|
2022
|
8
|
213.69
|
1.56
|
0
|
0
|
|
AFGANISTAN
|
8536509000
|
2022
|
9
|
42.28
|
2.00
|
0
|
0
|
|
AFGANISTAN
|
6210400000
|
2023
|
7
|
204.75
|
0.10
|
0
|
0
|
|
AFGANISTAN
|
0901210000
|
2024
|
4
|
0.00
|
0.00
|
440
|
21
|
|
AFGANISTAN
|
4909000000
|
2024
|
4
|
0.07
|
0.15
|
0
|
0
|
|
AFGANISTAN
|
8473300000
|
2024
|
6
|
60.18
|
1.00
|
0
|
0
|
- 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.
iso_paises <- read_excel("C:/Users/MINEDUCYT/Desktop/Practicas/nombres_iso_paises.xlsx")
iso_paises$nom_pais_esp <- toupper(iso_paises$nom_pais_esp)
comercio_iso <- data_comercio_exterior %>%
left_join(iso_paises, by = c("pais" = "nom_pais_esp"))
kable(head(comercio_iso, 10), format = "html") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"), full_width = TRUE)
|
pais
|
sac
|
anio
|
mes
|
valor_cif
|
kilogramos_importaciones
|
valor_fob
|
kilogramos_exportaciones
|
nom_pais_ingles
|
iso_2
|
iso_3
|
codigo_pais
|
region
|
cod_region
|
sub_region
|
cod_sub_region
|
region_intermedia
|
cod_region_intermedia
|
|
AFGANISTAN
|
8708990000
|
2022
|
2
|
220.50
|
0.29
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
8471900000
|
2022
|
5
|
665.90
|
4.00
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
5702310000
|
2022
|
6
|
913.74
|
22.02
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
5702502000
|
2022
|
6
|
566.35
|
11.36
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
6111200000
|
2022
|
8
|
213.69
|
1.56
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
8536509000
|
2022
|
9
|
42.28
|
2.00
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
6210400000
|
2023
|
7
|
204.75
|
0.10
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
0901210000
|
2024
|
4
|
0.00
|
0.00
|
440
|
21
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
4909000000
|
2024
|
4
|
0.07
|
0.15
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
|
AFGANISTAN
|
8473300000
|
2024
|
6
|
60.18
|
1.00
|
0
|
0
|
Afghanistan
|
AF
|
AFG
|
4
|
Asia
|
142
|
Asia Meridional
|
34
|
NA
|
NA
|
- Obtenga un ranking, anual, de los 5 principales socios comerciales
de El Salvador, para el periodo 2022-2026. Presente sus resultados en el
siguiente formato:
anios_ranking <- 2022:2026
comercio_iso %>%
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)) %>%
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) -> mi_tabla
print(mi_tabla)
## # A tibble: 5 × 6
## anio `1` `2` `3` `4` `5`
## <dbl> <chr> <chr> <chr> <chr> <chr>
## 1 2022 USA|38.78 GTM|17.05 HND|16.65 NIC|6.98 CRI|4.27
## 2 2023 USA|35.6 GTM|18.45 HND|16.3 NIC|7.85 CRI|4.79
## 3 2024 USA|33.84 GTM|19.53 HND|16.14 NIC|8.94 CRI|4.71
## 4 2025 USA|32.45 GTM|19.64 HND|16.74 NIC|9.12 CRI|4.45
## 5 2026 USA|32.53 GTM|19.46 HND|15.44 NIC|8.7 CRI|4.51
mi_tabla %>%
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
| 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