EJERCICIO 1.

Con base a la informacion disponible en la “Base de datos de Comercio Exterior” del BCR, para los años 2018-2020 cree una tabla tal como se mostro en clase sin incluir los nombres ISO.

Muestre un head de los primeros 10 casos.

library(dplyr)
## Warning: package 'dplyr' was built under R version 4.4.1
## 
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(kableExtra)
## Warning: package 'kableExtra' was built under R version 4.4.1
## 
## Adjuntando el paquete: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows
library(tidyr)
## Warning: package 'tidyr' was built under R version 4.4.1
load("C:/Users/dinau/Downloads/data_comercio_exterior.RData")
data_comercio_exterior %>% replace_na(
 list(
   valor_cif = 0,
   valor_fob = 0,
   kilogramos_importaciones = 0,
   kilogramos_exportaciones = 0
   ) 
) %>%
  arrange(pais, anio, mes, sac) -> data_comercio_exterior

#Filtro
data_comer_ext_filtrada<- data_comercio_exterior %>%
  filter(anio >= 2018 & anio <=2020)

#Tabla
data_comer_ext_filtrada %>% head(10) %>%
  kable(caption = "Base de datos de comercio Exterior 2018-2020", align = "c") %>% kable_styling()
Base de datos de comercio Exterior 2018-2020
pais sac anio mes valor_cif kilogramos_importaciones valor_fob kilogramos_exportaciones
Afganistan 0806200000 2018 6 6448.43 1463.92 0 0
Afganistan 6104220000 2018 10 3153.37 2407.61 0 0
Afganistan 6104620000 2018 10 946.01 722.28 0 0
Afganistan 6105100000 2018 10 9405.39 7181.03 0 0
Afganistan 6106100000 2018 10 1353.32 1725.55 0 0
Afganistan 6405900000 2018 10 2260.03 1725.55 0 0
Afganistan 8206000000 2018 10 6.56 5.02 0 0
Afganistan 6404110000 2019 2 7752.13 6748.03 0 0
Afganistan 6405100000 2019 2 508.03 442.24 0 0
Afganistan 6405900000 2019 2 12.45 10.85 0 0

EJERCICIO 2.

Agregue la informacion estandarizadas de los paises, muestre un head en los primeros 10 casos.

library(dplyr)
library(tidyr)
library(kableExtra)
library(readxl)
## Warning: package 'readxl' was built under R version 4.4.1
paises_iso <- read_excel("C:/Users/dinau/Downloads/master_paises_iso.xlsx")
## New names:
## • `codigo_pais` -> `codigo_pais...5`
## • `codigo_pais` -> `codigo_pais...6`
## • `` -> `...13`
paises_iso <- paises_iso %>%
  select(iso_3, region, pais = nom_pais_esp)
data_comercio_exterior %>% left_join(
  paises_iso,
  by = "pais") -> data_ce_iso

#ordenando
data_ce_iso <- data_ce_iso %>%
  select(pais,iso_3, region, everything())

data_ce_iso %>%
  head(10) %>%
  kable(caption = "Base de Comercio Exterior con codigos ISO y regiones", align = "c") %>%
  kable_styling()
Base de Comercio Exterior con codigos ISO y regiones
pais iso_3 region sac anio mes valor_cif kilogramos_importaciones valor_fob kilogramos_exportaciones
Afganistan AFG 142 4010390000 2017 4 58.06 0.92 0 0
Afganistan AFG 142 6812999000 2017 4 88.38 1.39 0 0
Afganistan AFG 142 8487900000 2017 4 20.93 0.33 0 0
Afganistan AFG 142 8511800000 2017 4 98.93 1.56 0 0
Afganistan AFG 142 8708930000 2017 4 62.18 0.98 0 0
Afganistan AFG 142 9028200000 2017 4 130.06 2.05 0 0
Afganistan AFG 142 6913100000 2017 12 650.43 5.49 0 0
Afganistan AFG 142 7326209000 2017 12 2.00 0.01 0 0
Afganistan AFG 142 0806200000 2018 6 6448.43 1463.92 0 0
Afganistan AFG 142 6104220000 2018 10 3153.37 2407.61 0 0

EJERCICIO 3

Obtenga un ranking anual, de los 5 principales socios comerciales de El Salvador en el periodo 2018-2020 y muestre el formato que se le establecio.

library(dplyr)
library(tidyr)
library(readxl)
paises_iso <- read_excel("C:/Users/dinau/Downloads/master_paises_iso.xlsx")
## New names:
## • `codigo_pais` -> `codigo_pais...5`
## • `codigo_pais` -> `codigo_pais...6`
## • `` -> `...13`
paises_iso <- paises_iso %>%
  select(iso_3, region, pais = nom_pais_esp)
data_comer_ext_filtrada %>% left_join(
  paises_iso,
  by = "pais") -> data_comer_ext_iso

#ordenando 
data_comer_ext_iso <- data_comer_ext_iso %>%
  select(pais, iso_3, region, everything())

ranking_anios<- 2018:2020
data_comer_ext_iso %>%
  filter(anio %in% ranking_anios) -> 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() -> data_ranka_top_5
## `summarise()` has grouped output by 'anio'. You can override using the
## `.groups` argument.
print(data_ranka_top_5)
##    anio      data rank
## 1  2018 USA|44.07    1
## 2  2018 HND|15.34    2
## 3  2018 GTM|14.36    3
## 4  2018  NIC|6.87    4
## 5  2018  CRI|4.39    5
## 6  2019 USA|41.88    1
## 7  2019 GTM|15.95    2
## 8  2019 HND|15.91    3
## 9  2019  NIC|6.68    4
## 10 2019   CRI|4.5    5
## 11 2020 USA|35.73    1
## 12 2020  GTM|16.9    2
## 13 2020 HND|15.21    3
## 14 2020  NIC|7.65    4
## 15 2020  CRI|5.21    5
library(tidyr)
data_ranka_top_5  %>% 
pivot_wider(names_from = rank,values_from = data)->tabla
print(tabla)
## # A tibble: 3 × 6
##    anio `1`       `2`       `3`       `4`      `5`     
##   <dbl> <chr>     <chr>     <chr>     <chr>    <chr>   
## 1  2018 USA|44.07 HND|15.34 GTM|14.36 NIC|6.87 CRI|4.39
## 2  2019 USA|41.88 GTM|15.95 HND|15.91 NIC|6.68 CRI|4.5 
## 3  2020 USA|35.73 GTM|16.9  HND|15.21 NIC|7.65 CRI|5.21
library(kableExtra)
tabla %>%
  kable(caption = paste("Top",5,"de Exportaciones periodo",
    min(2018),"-",max(2020))) %>%
  add_footnote(label = "Elaboración propia con base en datos del BCR") 
Top 5 de Exportaciones periodo 2018 - 2020
anio 1 2 3 4 5
2018 USA|44.07 HND|15.34 GTM|14.36 NIC|6.87 CRI|4.39
2019 USA|41.88 GTM|15.95 HND|15.91 NIC|6.68 CRI|4.5
2020 USA|35.73 GTM|16.9 HND|15.21 NIC|7.65 CRI|5.21

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