library(readr)
Importaciones_2018_1 <- read_delim("C:/Users/IRMA/Desktop/C-lI-2021/Metodos/Metodos_M/Importaciones_2018_1.csv", 
    "|", escape_double = FALSE, trim_ws = TRUE)
head(Importaciones_2018_1)
  1. Compile la información disponible en la “Base de Datos de Comercio Exterior” del BCR, para los años 2018-2020. Y genera una tabla tal como se mostró en las clases (aún no incluya los nombres ISO de los países).
Creación de la tabla de importaciones
#Cargar Paquetes
library(readr)
library(dplyr)
library(kableExtra)
setwd("C:/Users/IRMA/Desktop/C-lI-2021/Metodos/Metodos_M/")
archivos_importar<-list.files()
lista_importacion<-lapply(archivos_importar,
                          FUN = read_delim,delim="|",
                          col_names=c("pais",
                                  "sac",
                                  "anio",
                                  "mes",
                                  "valor_cif",
                                  "kilogramos"),
                          col_types=cols(pais="c",
                                  sac="c",
                                  anio="d",
                                  mes="d",
                                  valor_cif="d",
                                  kilogramos="d"),
                          skip=1)
#Emsamblar los archivos en un sólo dataframe
data_importaciones<-bind_rows(lista_importacion)
data_importaciones %>% head()%>% kable(caption="El Salvador: Base de Importaciones 2018-2020",
        align="c") %>% 
  add_footnote(label="Elaboración con base en datos del BCR",
               notation="symbol") %>%  kable_styling()
El Salvador: Base de Importaciones 2018-2020
pais sac anio mes valor_cif kilogramos
Canada 0404900000 2018 2 68040.00 18810.00
Canada 0404900000 2018 3 92725.74 25528.60
Canada 0404900000 2018 4 92546.45 25525.00
Canada 0404900000 2018 6 91531.00 25525.00
Canada 0405100000 2018 6 26.56 20.00
Canada 0511100000 2018 1 16365.04 23.65
* Elaboración con base en datos del BCR

Creación de la tabla de Exportaciones

library(readr)
library(dplyr)
library(kableExtra) 
setwd("C:/Users/IRMA/Desktop/C-lI-2021/Metodos/Metodos_X")
archivos_importar <- list.files()
lista_exportacion <- lapply(
  archivos_importar,
  FUN = read_delim,
  delim = "|",
  col_names = c("pais",
                "sac",
                "anio",
                "mes",
                "valor_fob",
                "kilogramos"),
  col_types = cols(
    pais = "c",
    sac = "c",
    anio = "d",
    mes = "d",
    valor_cif = "d",
    kilogramos = "d"
  ),
  skip = 1
)
#Emsamblar los archivos en un sólo dataframe
data_exportaciones <- bind_rows(lista_exportacion)
#Mostrar las tablas en formato html (es para esta publicación)
data_exportaciones %>% head() %>% kable(caption = "Base de Exportaciones 2018-2020", align = "c") %>%
  add_footnote(label = "Elaboración con base en datos del BCR",
               notation = "symbol") %>%  kable_styling()
Base de Exportaciones 2018-2020
pais sac anio mes valor_fob kilogramos
Canada 0106900000 2018 2 4667.2 15.0
Canada 0106900000 2018 3 4237.1 14.0
Canada 0106900000 2018 4 3918.0 13.5
Canada 0106900000 2018 5 3155.4 10.0
Canada 0106900000 2018 6 3097.4 9.0
Canada 0305720000 2018 2 2702.3 280.0
* Elaboración con base en datos del BCR

Creacion de la tabla de comercio exterior

library(dplyr)
library(tidyr)
library(kableExtra)
#Concatenar las tablas de data_importaciones & data_exportaciones
data_importaciones %>% full_join(
  data_exportaciones,
  by = c("pais", "sac", "anio", "mes"),
  suffix = c("_importaciones", "_exportaciones")
) -> data_comercio_exterior

#Sustitur los Valores Nulos "NA" y guardar en el mismo objeto
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

data_comercio_exterior %>% head() %>%
  kable(caption = "Base de Comercio Exterior 2018-2020",
        align = "c") %>%
  add_footnote(label = "Elaboración con base en datos del BCR",
               notation = "symbol") %>%  kable_styling()
Base 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
* Elaboración con base en datos del BCR

Guardar la tabla de comercio exterior

#Guardado del objeto data_comercio_exterior
save(data_comercio_exterior, file = "C:/Users/IRMA/Desktop/C-lI-2021/Metodos/data_comercio_exteriorr.RData")
  1. Realice la actualización de la tabla anterior con toda la información disponible para 2021.

Actualización de la base (Julio 2021)

library(dplyr)
library(tidyr)
library(kableExtra)
setwd("C:/Users/IRMA/Desktop/C-lI-2021/Metodos/update/importaciones")
archivos_importar <- list.files()
lista_importacion <- lapply(
  archivos_importar,
  FUN = read_delim,
  delim = "|",
  col_names = c("pais",
                "sac",
                "anio",
                "mes",
                "valor_cif",
                "kilogramos"),
  col_types = cols(
    pais = "c",
    sac = "c",
    anio = "d",
    mes = "d",
    valor_cif = "d",
    kilogramos = "d"
  ),
  skip = 1
)
#Ensamblar los archivos en un sólo dataframe
data_importaciones_update <- bind_rows(lista_importacion)
#Exportaciones
setwd("C:/Users/IRMA/Desktop/C-lI-2021/Metodos/update/exportaciones")
archivos_importar <- list.files()
#Leer los archivos del directorio de trabajo
lista_importacion <- lapply(
  archivos_importar,
  FUN = read_delim,
  delim = "|",
  col_names = c("pais",
                "sac",
                "anio",
                "mes",
                "valor_fob",
                "kilogramos"),
  col_types = cols(
    pais = "c",
    sac = "c",
    anio = "d",
    mes = "d",
    valor_cif = "d",
    kilogramos = "d"
  ),
  skip = 1
)
## Warning: The following named parsers don't match the column names: valor_cif
#Ensamblar los archivos en un sólo dataframe
data_exportaciones_update <- bind_rows(lista_importacion)


#Concatenar las tablas de data_importaciones & data_exportaciones
data_importaciones_update %>% full_join(
  data_exportaciones_update,
  by = c("pais", "sac", "anio", "mes"),
  suffix = c("_importaciones", "_exportaciones")
) -> data_comercio_exterior_update

#Sustitur los Valores Nulos "NA" y guardar en el mismo objeto
data_comercio_exterior_update %>% replace_na(
  list(
    valor_cif = 0,
    valor_fob = 0,
    kilogramos_importaciones = 0,
    kilogramos_exportaciones = 0
  )
) %>%
  arrange(pais, anio, mes, sac) -> data_comercio_exterior_update
#Unir la tabla de comercio exterior y su actualización
data_comercio_exterior %>% bind_rows(data_comercio_exterior_update) %>%  arrange(pais, anio, mes, sac) ->
  data_comercio_exterior

save(data_comercio_exterior, file = "C:/Users/IRMA/Desktop/C-lI-2021/Metodos/data_comercio_exteriorr_actualizada.RData")

#Mostrar Tabla (primeros 6 elementos)
data_comercio_exterior %>% filter(anio == 2021, mes == 07 ) %>% head() %>%
  kable(caption = "Base de Comercio Exterior 2018-2021 (Julio)",
        align = "c") %>%
  add_footnote(label = "Elaboración con base en datos del BCR",
               notation = "symbol") %>%  kable_styling()
Base de Comercio Exterior 2018-2021 (Julio)
pais sac anio mes valor_cif kilogramos_importaciones valor_fob kilogramos_exportaciones
Albania 9801002000 2021 7 5115.02 632.00 0 0.0
Alemania 0406400000 2021 7 196.06 7.81 0 0.0
Alemania 0406909000 2021 7 4720.73 680.42 0 0.0
Alemania 0409000000 2021 7 0.00 0.00 85050 21994.0
Alemania 0602100000 2021 7 1024.40 5.00 0 0.0
Alemania 0901113000 2021 7 0.00 0.00 707275 169606.7
* Elaboración con base en datos del BCR
  1. Agregue la información estandarizada de los países (nombres iso de los países y regiones, etc, tal como se vio en clases)
library(readxl)
library(dplyr)
library(kableExtra)
options(scipen = 999999)
load("C:/Users/IRMA/Desktop/C-lI-2021/Metodos/data_comercio_exteriorr_actualizada.RData")
nombre_archivo<-"C:/Users/IRMA/Desktop/C-lI-2021/Metodos/nombres_iso_paises.xlsx"
nombres_iso_paises<-read_excel(nombre_archivo)
data_comercio_exterior %>%
  left_join(nombres_iso_paises,
            by=c("pais"="nom_pais_esp")) -> base_comercio

base_comercio %>% head() %>% kable(caption = "Data comercio exterior",align = "c") %>% 
                                       add_footnote(label = "Elaboración en base a datos del BCR",
                                                    notation = "symbol") %>% kable_styling()
Data comercio exterior
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 0806200000 2018 6 6448.43 1463.92 0 0 Afghanistan AF AFG 4 Asia 142 Asia Meridional 34 NA NA
Afganistan 6104220000 2018 10 3153.37 2407.61 0 0 Afghanistan AF AFG 4 Asia 142 Asia Meridional 34 NA NA
Afganistan 6104620000 2018 10 946.01 722.28 0 0 Afghanistan AF AFG 4 Asia 142 Asia Meridional 34 NA NA
Afganistan 6105100000 2018 10 9405.39 7181.03 0 0 Afghanistan AF AFG 4 Asia 142 Asia Meridional 34 NA NA
Afganistan 6106100000 2018 10 1353.32 1725.55 0 0 Afghanistan AF AFG 4 Asia 142 Asia Meridional 34 NA NA
Afganistan 6405900000 2018 10 2260.03 1725.55 0 0 Afghanistan AF AFG 4 Asia 142 Asia Meridional 34 NA NA
* Elaboración en base a datos del BCR
  1. Obtenga un ranking, anual, de los 5 principales socios comerciales de El Salvador, para el periodo 2018-2021. Presente sus resultados en el siguiente formato:
library(readxl)
library(dplyr)
library(kableExtra)
Exportaciones_anio<-data_comercio_exterior %>%
  group_by(anio) %>%
  summarise(
  `total anio` = (sum(valor_fob)))
anio_2018<-Exportaciones_anio[1,2]
anio_2019<-Exportaciones_anio[2,2]
anio_2020<-Exportaciones_anio[3,2]
anio_2021<-Exportaciones_anio[4,2]

primer_anio <- data_comercio_exterior %>%
  left_join(nombres_iso_paises, by = c("pais" = "nom_pais_esp")) %>%
  group_by(anio, iso_3) %>% 
  summarise(`total 2018` = round(((( sum(valor_fob)) * 100) / anio_2018), 2)) %>%
  select("anio","iso_3", "total 2018") %>%
  filter(anio == 2018, `total 2018` > 0) %>%
  arrange(desc(`total 2018`))
## `summarise()` has grouped output by 'anio'. You can override using the `.groups` argument.
segundo_anio <- data_comercio_exterior %>%
  left_join(nombres_iso_paises, by = c("pais" = "nom_pais_esp")) %>%
  group_by(anio, iso_3) %>%
  summarise(`total 2019` = round((((sum(valor_fob)) * 100) / anio_2019), 2)) %>%
  select("anio", "iso_3", "total 2019") %>%
  filter(anio == 2019, `total 2019` > 0) %>%
  arrange(desc(`total 2019`))
## `summarise()` has grouped output by 'anio'. You can override using the `.groups` argument.
tercer_anio <- data_comercio_exterior %>%
  left_join(nombres_iso_paises, by = c("pais" = "nom_pais_esp")) %>%
  group_by(anio, iso_3) %>%
  summarise(`total 2020` = round((((sum(valor_fob)) * 100) / anio_2020), 2)) %>%
  select("anio","iso_3", "total 2020") %>%
  filter(anio == 2020, `total 2020` > 0) %>%
  arrange(desc(`total 2020`))
## `summarise()` has grouped output by 'anio'. You can override using the `.groups` argument.
cuarto_anio <- data_comercio_exterior %>%
  left_join(nombres_iso_paises, by = c("pais" = "nom_pais_esp")) %>%
  group_by(anio,iso_3) %>%
  summarise(`total 2021` = round((((sum(valor_fob)) * 100) /
anio_2021), 2)) %>%
  select("anio","iso_3", "total 2021") %>%
  filter(anio == 2021, `total 2021` > 0) %>%
  arrange(desc(`total 2021`))
## `summarise()` has grouped output by 'anio'. You can override using the `.groups` argument.
anio_2018 <- (paste(primer_anio$iso_3[1:5],
    primer_anio$`total 2018`$`total anio`[1:5], sep = " | " ))
anio_2019 <- (paste(segundo_anio$iso_3[1:5],
    segundo_anio$`total 2019`$`total anio`[1:5], sep = " | "))
anio_2020 <- (paste(tercer_anio$iso_3[1:5],
    tercer_anio$`total 2020`$`total anio`[1:5], sep = " | "))
anio_2021 <-(paste(cuarto_anio$iso_3[1:5],
    cuarto_anio$`total 2021`$`total anio`[1:5], sep = " | "))

top_exp <- data.frame(anio_2018, anio_2019, anio_2020, anio_2021)
names(top_exp) = c("2018", "2019", "2020", "2021")
top_exp_t <- t(top_exp[, 1:ncol(top_exp)])
colnames(top_exp_t) <- top_exp[, 0]
colnames(top_exp_t) <- c("1", "2", "3", "4", "5")
kable(head(top_exp_t, 5),caption ="Top 5 socios comerciales, periodo 2018 -2021, datos en porcentaje de las exportaciones totales", align = "c") %>% add_footnote(label = "Elaboracion con base en datos del BCR", 
               notation = "symbol") %>% 
  kable_styling()
Top 5 socios comerciales, periodo 2018 -2021, datos en porcentaje de las exportaciones totales
1 2 3 4 5
2018 USA | 44.07 HND | 15.34 GTM | 14.36 NIC | 6.87 CRI | 4.39
2019 USA | 42.03 GTM | 15.92 HND | 15.9 NIC | 6.66 CRI | 4.46
2020 USA | 39.18 GTM | 16.89 HND | 15.44 NIC | 7.26 CRI | 4.65
2021 USA | 40.59 GTM | 16.98 HND | 15.82 NIC | 6.99 CRI | 4.04
* Elaboracion con base en datos del BCR