cargando datos

load("~/MAE1182022/PAR1MAE/Karla_Regina_Paniagua_Munoz_data_parcial_1_2021.RData")

PARTE I 50% (TEÓRICA)

1) Explique las formas de acceder al elemento “j” de una lista A que está en la posición “i” de una lista B. nota: el elemento “j” de la lista A tiene etiqueta “hijo” y dentro de la lista B, la lista A tiene la etiqueta “padre”.

Para acceder a la lista A se nos dice que esta en la posición “i” de la lista B, entonces accedemos con B[[i]], esto es nuestra lista A, y para acceder al elemento “j” no es nada mas que B[[i]][[j]]

Otra manera para acceder al elemento “j” de una lista A que esta en una posición “i” de una lista B es B$padre ya que la etiqueta de la lista A es padre y luego de eso nos vamos a la posición “j” B$padre[[j]]

2) Explique ¿Cómo se clasifican las estructuras de datos en R?

Las estructuras de datos se clasifican en homogéneas y heterogéneas, donde las homogeneas todos los elementos que estan incluidos son del mismo tipo o mejor dicho puede contener un tipo de dato basico al mismo tiempo, es decir solo numeros, solo caracteres, etc. Y entre las estructuras heterogeneas pueden tener varios tipos de datos al mismo tiempo.

Clasificandolo tenemos que en la parte homogenea estan, los vectores, matrices y Arrays, mientras que los heterogeneos tenemos las listas y los data frames.

3) Represente gráficamente la instrucción right_join(A,B) a través de un diagrama de Venn y explique su significado.

“Right Join Ejemplo retomado de Programas y más”

El significado es: Sea “A” un dataframe y “B” otro dataframe en el cual ambos tienen algunos elementos en común, y lo que se quiere hacer es que para unir estos dos dataframes con right_join lo que se indica es que necesitamos todos los registros de B y solo se uniran los elementos de A que sean comunes a los elementos de B debido a que B es nuestro dataframe prioritario.

PARTE II 50% (PRACTICA) usando la base de comercio exterior proporcionada en clases, resuelva los siguientes ejercicios.

Ejercicio 1

Elabore una función que se llame totales_pais_anios, que use como argumentos el código de país iso de tres caracteres, para elegir el socio comercial de El Salvador, y permita obtener las exportaciones y las importaciones para un periodo especifico.

library(dplyr)
library(kableExtra)
totales_pais_anios<-function(ISO="PAN",a=2017,b=2018){
  data_comercio_exterior %>% left_join(nombres_iso_paises, by = c("pais" = "nom_pais_esp")) -> data_comercio_exterior
  anio<-a:b
  data_comercio_exterior %>%filter(iso_3 %in% ISO) %>%  filter(anio %in% anio)->datos
  datos %>% group_by(anio)%>% summarise(Exportaciones=sum(valor_fob),Importaciones=sum(valor_cif))->reporte
  
  reporte
}

totales_pais_anios(ISO="USA",2017,2020)
## # A tibble: 4 × 3
##    anio Exportaciones Importaciones
##   <dbl>         <dbl>         <dbl>
## 1  2017   2564416169.   3352811366.
## 2  2018   2602213108.   3793431275.
## 3  2019   2488778643.   3649125145.
## 4  2020   1138242164.   1783499199.

Ejercicio 2

Usando la función creada en el ejercicio 1 y los comandos que sean necesarios, genere la siguiente tabla: (nota ratio es el cociente entre Importaciones y Exportaciones) PAN=Panamá , BLZ=Belice.

consulta<-function(ISO1="PAN",ISO2="BLZ",a=2017,b=2020){
  periodo<-a:b
  totales_pais_anios(ISO1,a,b)->reporte1
  totales_pais_anios(ISO2,a,b)->reporte2
  
  reporte1 %>% mutate(ratio=Importaciones/Exportaciones)->reporte1
  reporte2 %>% mutate(ratio=Importaciones/Exportaciones)->reporte2
  reporte1 %>% left_join(reporte2,by="anio")->reporte
  
    colnames(reporte)<-c("anio",paste("Exportaciones_",ISO1),paste("Importaciones_",ISO1),paste("ratio_",ISO1),paste("Exportaciones_",ISO2),paste("Importaciones_",ISO2),paste("ratio_",ISO2))
  reporte %>%  kable(caption = paste("Exportaciones e importaciones de", ISO1, "y",ISO2,"en el periodo", min(periodo),"-", max(periodo) )) %>% add_footnote(label = "Elaboración propia con base en datos del BCR", notation = "symbol") %>%  kable_styling()
}

consulta("PAN","BLZ",2017,2020)
Exportaciones e importaciones de PAN y BLZ en el periodo 2017 - 2020
anio Exportaciones_ PAN Importaciones_ PAN ratio_ PAN Exportaciones_ BLZ Importaciones_ BLZ ratio_ BLZ
2017 121764374 76397756 0.6274229 16013380 3923274.1 0.2449998
2018 122548686 62612465 0.5109191 21963732 664821.5 0.0302691
2019 122098397 74362428 0.6090369 20114436 478794.1 0.0238035
2020 60918331 40139646 0.6589092 8484919 233631.9 0.0275350
* Elaboración propia con base en datos del BCR

Ejercicio 3

Obtenga los indicadores de Balassa, para el capítulo “01”, usando las funciones provistas en clase.

source(file = "~/MAE1182022/PAR1MAE/funciones_comercio_exterior.R",echo = TRUE,max.deparse.length = 100,encoding = "utf-8")
## 
## > options(scipen = 999)
## 
## > library(dplyr)
## 
## > library(readxl)
## 
## > library(stringr)
## 
## > load("~/MAE1182022/PAR1MAE/data_comercio_exterior_actualizada.RData")
## 
## > nombre_archivo <- "~/MAE1182022/PAR1MAE/nombres_iso_paises.xlsx"
## 
## > nombres_iso_paises <- read_excel(nombre_archivo)
## 
## > 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]
Resultados_Balassa1<-data.frame("anios"=2017:2020,
                            "IB_PAN"=sapply(X=2017:2020,FUN = indicadores_Balassa_capitulo,codigo_pais=591,capitulo="01"))

Resultados_Balassa2<-data.frame("anios"=2017:2020,
                            "IB_BLZ"=sapply(X=2017:2020,FUN = indicadores_Balassa_capitulo,codigo_pais=84,capitulo="01"))

Resultados_Balassa1 %>% left_join(Resultados_Balassa2)
##   anios     IB_PAN IB_BLZ
## 1  2017        NaN    NaN
## 2  2018 -0.7287596     -1
## 3  2019 -0.8369806     -1
## 4  2020 -0.9981763     -1

Ejercicio 4

Genera una función que obtenga un ranking, anual, de los “K” principales socios comerciales de El Salvador, para el periodo año inicio-año final. Presente sus resultados:

library(dplyr)
library(tidyr)
topk <- function(a = 2018,
                 b = 2021,
                 k = 5) {
  data_comercio_exterior %>% left_join(nombres_iso_paises, by = c("pais" = "nom_pais_esp")) -> data_comercio_exterior
  anios_ranking <- a:b
  data_comercio_exterior %>%
    filter(anio %in% anios_ranking) -> data_ranking
  data_ranking %>%
    group_by(anio,iso_3.x) %>%
    summarise(total = sum(valor_fob)) %>%
    mutate(percent = round(prop.table(total) * 100, 2)) %>%
    slice_max(n = k, order_by = total) %>%
    as.data.frame() %>%
    group_by(anio) %>%
    mutate(rank = row_number(), data = paste(iso_3.x, "|", percent)) %>%
    select(anio, data, rank) %>%
    as.data.frame() -> insumo_reporte
  insumo_reporte %>%
    pivot_wider(names_from = rank, values_from = data) -> mi_tabla
  mi_tabla %>%
    kable(caption = paste(
      "Top",
      k,
      "de Exportaciones periodo",
      min(anios_ranking),
      "-",
      max(anios_ranking)
    )) %>%
    add_footnote(label = "Elaboración propia, con base en información del BCR, Elaborado para el Parcial 1 MAE118 2022", notation = "symbol") %>%  kable_styling()
}
topk(2018,2020,5)
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 | 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
* Elaboración propia, con base en información del BCR, Elaborado para el Parcial 1 MAE118 2022