UNIVERSIDAD DE EL SALVADOR

FACULTAD DE CIENCIAS ECONÓMICAS

ESCUELA DE ECONOMÍA

CICLO II-2022

Asignatura:

Métodos para el Análisis Ecocómico.

Grupo Teorico

03

Facilitador:

Carlos Ademir Pérez Alas.

Estudiante

Elias Amilcar Lemus Perez

Nùmero de Carnet

LP16016

Contenido:

Solucion Parcial 1 Ordinario

Ciudad Universitaria, 10 de octubre de 2022.


Parte Teorica

Pregunta 1:

Explique ¿qué son las estructuras de datos?

## son las colecciones o conjunto de datos en r,(Formas en que se almacenan los datos) se organizan por su dimension y si son homogéneas o heteroéneas 

Pregunta 2:

Explique ¿como se clasifican las estructuras de datos?

# Las estructuras de datos básicas de R pueden agrupar por su dimensionalidad y según si son homogéneas (todos los elementos son del mismo tipo) o heterogéneas (hay elementos de distintos tipos).

# Vectores
# Los vectores son la estructura de datos básica en R, y se los puede clasificar en vectores simples (o atómicos, del ingles atomic vector) y listas. Poseen 3 propiedades:

    # Tipo → typeof
    # Longitud (es decir, cuantos elementos contienen) → length
    # Atributos (meta-datos adicionales) → attributes

# Los vectores simples y las listas se diferencian respecto del tipo de elementos que pueden contener. Mientras que en los vectores simples todo los elementos deben ser de un mismo tipo, en las listas esto no es una restricción.

# Listas

## Las listas son diferentes de los vectores debido a que sus elementos pueden ser de cualquier tipo, incluyendo nuevas listas. Estas se crean con el comando list:

# Atributos

## Todos los objetos pueden tener una cantidad adicional de atributos, los cuales son usados para almacenar meta-información acerca de estos. Los atributos pueden ser pensados como una lista nombrada, y por lo tanto pueden ser accedidos individualmente con attr, o todo juntos con el comando attributes:

Representacion de la estructura de datos en R


Pregunta 3:

Represente graficamente la intruccion anti_join(A,B) atraves de un diagrama de Venn y explique su significado practico

# El anti_join sirve para unir auna tabla con otra sin seleccionar los elementos comunes con la otra tabla, ejemplo: tenemos una tabla A y una B,aplicamos anti_join(A,B) nos unira y presentara los elementos que estan en a pero no se encuentran en B 

Representación del Anti_join (A,B)


Parte Practica

carga de datos

load("C:/Users/pc/Downloads/data_comercio_exterior_actualizada.RData")
source(file = "C:/Users/pc/Downloads/funciones_comercio_exterior.R")

EJERCICIO 1:

Hacer una funcion que se llame totales_pais_anios que use como argumentos el codigo del pais iso de tres caracteres, para el elegir el socio comercial de El Salvador y permita obtener las exportaciones y las importaciones para un periodo especifico

library(dplyr)
totales_pais_anios<-function(codigo,periodo){
  Exp_Imp_Total<-data_comercio_exterior %>% 
                  group_by(iso_3, anio) %>% 
                  summarise(Exp= sum(valor_fob)/1e6, 
                            Imp= sum(valor_cif)/1e6)
  
  Exp_Imp_Total %>% filter(codigo== iso_3 , anio %in% periodo)
}

EJERCICIO 2:

Usando la funcion creada en el ejerccio 1 y los comandos que sean necesarios, genere la siguiente tabla:( nota ratio es el cociente entre Importaciones y Exportaciones) GTM= Guatemala, HND= Honduras

tabla_HND<-totales_pais_anios("HND",2017:2020)
colnames(tabla_HND)<-c("Pais", "anio", "Exp_HND", "Imp_HND") 

tabla_HND %>% mutate(ratio_HND=Imp_HND/Exp_HND)->tabla_HND

tabla_GTM<-totales_pais_anios("GTM", 2017:2020)
colnames(tabla_GTM)<-c("Pais", "anio", "Exp_GTM", "Imp_GTM")
tabla_GTM %>% mutate(ratio_GTM=Imp_GTM/Exp_GTM)->tabla_GTM

tabla_HND %>% left_join(tabla_GTM, by= c("anio"="anio")) ->mi_tabla

mi_tabla %>% select("anio","Exp_HND", "Imp_HND","ratio_HND","Exp_GTM", "Imp_GTM","ratio_GTM")
## # A tibble: 4 × 7
##    anio Exp_HND Imp_HND ratio_HND Exp_GTM Imp_GTM ratio_GTM
##   <dbl>   <dbl>   <dbl>     <dbl>   <dbl>   <dbl>     <dbl>
## 1  2017   1594.   1167.     0.732   1584.   2092.      1.32
## 2  2018   1811.   1462.     0.807   1696.   2309.      1.36
## 3  2019   1877.   1618.     0.862   1881.   2533.      1.35
## 4  2020   1553.   1334.     0.859   1697.   2424.      1.43

Ejercicio 3:

Obtenga los indicadores de Balassa, para el capitulo “01”, usando las funciones provistas en clase

library(kableExtra)
capitulo<-"01"
data.frame("años"=2018:2020,
"IB_Guatemala"=sapply(X=2018:2020,FUN = indicadores_Balassa_capitulo,codigo_pais=320,capitulo=capitulo),  "IB_Honduras"=sapply(X=2018:2020,FUN=indicadores_Balassa_capitulo,codigo_pais=340,capitulo=capitulo))%>%
head() %>% kable(caption = "Indice de Balassa") %>% kable_minimal() %>% 
  add_footnote(label="Elaboración propia con base en datos del BCR",notation="symbol") %>%  kable_styling(bootstrap_options = "striped",full_width = TRUE)
Indice de Balassa
años IB_Guatemala IB_Honduras
2018 0.9093569 0.1149491
2019 0.9003127 -0.0076163
2020 0.9183771 0.3837457
* Elaboración propia con base en datos del BCR

Ejercicio 4:

Genera una funicon 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 en el siguiente formato: y utilizala para generar el top 10 de socios comerciales para el eriodo 2018-2020, la tabla debera tener el pie de pagina “Elaborado para el Parcial 1 MAE118 2022”

top_socios_comerciales <-
  function(anios_ranking = 2018:2020,
           numero_socios = 10,
           posiciones_decimales = 2,
           titulo_pie_tabla = "Fuente:",
           pie_tabla = "Elaboración para el Parcial 1 MAE118 2022") {
    
    #Filtro Años Requeridos
    data_comercio_exterior %>%
      filter(anio %in% anios_ranking) -> data_ranking
    
    #Cálculo de Porcentajes
    data_ranking %>%
      group_by(anio, iso_3) %>%
      summarise(total = sum(valor_fob)) %>%
      mutate(percent = round(prop.table(total) * 100, posiciones_decimales)) %>%
      slice_max(n = numero_socios, 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
    names(insumo_reporte) <- c("Año", "Data", "Rank")
    
    #Formato Tabla original
    library(tidyr)
    insumo_reporte %>%
      pivot_wider(names_from = Rank, values_from = Data) -> mi_tabla
    
    #Formato Tabla Final
    library(kableExtra)
    mi_tabla %>%
      kable(
        caption = paste(
          "Top",
          numero_socios,
          "de Exportaciones Periodo",
          min(anios_ranking),
          "-",
          max(anios_ranking),
          "."
        ),
        align = "c"
      ) %>%
      kable_classic(html_font = "Times New Roman",
                    font_size = 14) %>%
      column_spec(1, bold = T) %>%
      row_spec(0, bold = T, color = "black") %>%
      footnote(general_title = titulo_pie_tabla,
               general = pie_tabla)
  }
top_socios_comerciales()
Top 10 de Exportaciones Periodo 2018 - 2020 .
Año 1 2 3 4 5 6 7 8 9 10
2018 USA|44.07% HND|15.34% GTM|14.36% NIC|6.87% CRI|4.39% NA|3.02% MEX|2.44% PAN|2.09% DOM|1.65% ESP|0.82%
2019 USA|42.04% GTM|15.92% HND|15.9% NIC|6.66% CRI|4.46% MEX|2.54% NA|2.37% PAN|2.03% DOM|1.75% CAN|1.09%
2020 USA|39.25% GTM|16.87% HND|15.45% NIC|7.25% CRI|4.63% NA|3.99% MEX|2.47% PAN|1.87% DOM|1.78% DEU|0.72%
Fuente:
Elaboración para el Parcial 1 MAE118 2022