Manual de la utilización de los paquetes “readxls” y “ggplot2” enfocado al análisis del comportamiento del tipo de cambio del dólar con respecto al peso mexicano durante 2017.

El propósito de este proyecto es realizar un manual de la utilización de los paquetes readxls y ggplot2 en el software R, enfocado en el análisis de los tipos de cambio publicados diariamente por el Servicio de Administración Tributaria (SAT) para el cumplimiento de obligaciones y derechos que fueron contratados en dólares americanos con respecto al peso mexicano, por el mes de enero de 2017.

Existen diversas bases de datos que contienen los tipos de cambio entre el peso y dólar, sin embargo hemos decidido utilizar una fuente oficial de publicación, debido a que este es el tipo de cambio reconocido por las autoridades, este tipo de análisis nos será de utilidad para nuestro trabajo diario. Así como sus distintas aplicaciones prácticas (por ejemplo hacer análisis del resultado cambiario de una entidad).

Los objetivos que cubriremos con este manual son:
  1. Utilizar el software R, identificando la paqueteria necesaria para realizar dicho análisis.
  2. Realizar un script editable que nos sea útil con el paso del tiempo y que por lo tanto sea modificable de acuerdo a nuestras necesidades.
  3. Instruir al programa para que busque en la página del SAT http://www.sat.gob.mx la información deseada, de tal forma que este script se pudiera modificar realizar el análisis con la información actualizada.
  4. Comenzar a utilizar las gráficas que el software R puede realizar con los distintos paquetes para el análisis de la información.
  5. Aprender a publicar con Markdown (lenguaje de marcado ligero) nuestros análisis de la información en internet.

A continuación presentaremos el proyecto el cual hemos diseñado de la siguiente forma: escribiremos detalladamente el objetivo de la instrucción dada en el scrip R y posteriormente el comando de la instrucción y funcionalidad en sistema R.

PROYECTO

1) Iniciamos nuestro proyecto identificando la información que deseamos analizar.
-Tipos de cambio, tenemos diferentes opciones para obtener la información, sin embargo utilizaremos la fuente del SAT para obtenerla. Buscaremos la liga correcta para bajar el archivo que requerimos.

'("http://www.sat.gob.mx/informacion_fiscal/tablas_indicadores/Documents/tc_2017.xls", "(readxl)")'
## [1] "(\"http://www.sat.gob.mx/informacion_fiscal/tablas_indicadores/Documents/tc_2017.xls\", \"(readxl)\")"

2) Para la utilización del software R, debemos tener claramente identificado el formato en el que se encuentra la información. R tiene capacidad de leer diferentes tipos de formato siempre que utilicemos la paqueteria correcta.

-En este caso encontramos que el archivo que es proporcionado por el SAT, tiene un formato xls por lo que primero requerimos tener instalada la paqueteria readxl, y posteriormente llamarla mediante el siguiente comando library(readxl):

paste("library", "(readxl)")
## [1] "library (readxl)"

3) Instrucción para que el programa se conecte a la página de internet y descargue la base de datos que requerimos para nuestro análisis.

-La siguiente instrucción es indicarle a R que se conecte a la página de internet y definirla con la variable url.

'paste'("url", "(http://www.sat.gob.mx/informacion_fiscal/tablas_indicadores/Documents/tc_2017.xls)")
## [1] "url (http://www.sat.gob.mx/informacion_fiscal/tablas_indicadores/Documents/tc_2017.xls)"

4) Instrucción de descargar el archivo

  • Hemos revisado el archivo previamente y requerimos instruir a R con algunas precisiones para tener la base de datos de la forma más adecuada, las precisiones son la asignación de tipo de campo en cada fila, eliminar las columnas que no requerimos y delimitar las filas (en este caso 31 días del mes). Para realizar esta instrucción es posible utilizar a)el importador de bases de datos, la cual tiene una funcionalidad más amigable y despliega el código (script) que debemos introducir en R y b) realizar el script de la instrucción de lectura de archivos.

Con esta funcionalidad es posible, importar archivos desde una página de internet o de cualquier directorio de la computadora, permite manipular las columnas, así como cambiar nombres, entre otras.

    1. Opción Import Databaset:
library(readxl)
tc_2017 <- read_excel("~/04 Educación continua/03 Maestria - UNAM/04 Materia 2 - Metodos cuantitativos/tc_2017.xlsx")
View(tc_2017)

-b) Opción redactar el script para la lectura de archivos:

library(readxl) url <- “http://www.sat.gob.mx/informacion_fiscal/tablas_indicadores/Documents/tc_2017.xls” destfile <- “tc_2017.xls” curl::curl_download(url, destfile) tc_2017 <- read_excel(destfile, skip = 1, n_max = 31) View(tc_2017)

5) Lectura del archivo

  • A continuación solicitamos ver la tabla de los tipos de cambio con esta función.
  • Para leer el archivo xls que hemos definido como tc_2017, utilizamos la paqueteria “readxl”, utilizando el comando read_excel(tc_2017.xls). Es importante mencionar que la información se bajará al directorio en donde estamos trabajando.

tc_2017

tc_2017
## # A tibble: 31 x 13
##      Día Enero Febrero Marzo Abril  Mayo Junio Julio Agosto Septiembre
##    <dbl> <dbl>   <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>  <dbl>      <dbl>
##  1  1.00  NA      20.8  20.0  NA    NA    18.7  NA     17.9       17.8
##  2  2.00  20.6    20.8  19.9  NA    19.0  18.6  NA     17.8       NA  
##  3  3.00  20.7    20.6  19.9  18.8  18.8  NA    18.1   17.9       NA  
##  4  4.00  20.9    NA    NA    18.7  18.8  NA    18.2   17.9       17.8
##  5  5.00  21.4    NA    NA    18.8  19.0  18.6  18.2   NA         17.9
##  6  6.00  21.4    NA    19.6  18.7  NA    18.4  18.4   NA         17.8
##  7  7.00  NA      20.3  19.6  18.8  NA    18.3  18.3   17.9       17.8
##  8  8.00  NA      20.6  19.5  NA    19.0  18.2  NA     18.0       17.7
##  9  9.00  21.3    20.5  19.6  NA    19.1  18.2  NA     17.9       NA  
## 10 10.0   21.3    20.4  19.8  18.7  19.1  NA    18.1   18.0       NA  
## # ... with 21 more rows, and 3 more variables: Octubre <dbl>,
## #   Noviembre <dbl>, Diciembre <dbl>

6) Análisis de la información -Con ayuda del comando “Summary” podemos análizar ciertas medidas estadísticas tales como: mediana, media, mínimo y máximos, los cuales nos permitiran conocer en este ejemplo el comportamiento por mes del tipo de cambio. Así mismo indica el número de N/A de cada mes, este dato refleja la cantidad de días del mes que no fueron días hábiles (sábados, domingos y feriados).

summary(tc_2017)
##       Día           Enero          Febrero          Marzo      
##  Min.   : 1.0   Min.   :20.62   Min.   :19.70   Min.   :18.71  
##  1st Qu.: 8.5   1st Qu.:21.23   1st Qu.:20.33   1st Qu.:19.01  
##  Median :16.0   Median :21.37   Median :20.35   Median :19.49  
##  Mean   :16.0   Mean   :21.38   Mean   :20.33   Mean   :19.36  
##  3rd Qu.:23.5   3rd Qu.:21.66   3rd Qu.:20.48   3rd Qu.:19.62  
##  Max.   :31.0   Max.   :21.91   Max.   :20.79   Max.   :20.00  
##                 NA's   :9       NA's   :12      NA's   :9      
##      Abril            Mayo           Junio           Julio      
##  Min.   :18.49   Min.   :18.42   Min.   :17.88   Min.   :17.49  
##  1st Qu.:18.70   1st Qu.:18.63   1st Qu.:17.99   1st Qu.:17.58  
##  Median :18.77   Median :18.72   Median :18.12   Median :17.75  
##  Mean   :18.78   Mean   :18.77   Mean   :18.16   Mean   :17.84  
##  3rd Qu.:18.84   3rd Qu.:18.95   3rd Qu.:18.22   3rd Qu.:18.06  
##  Max.   :19.11   Max.   :19.14   Max.   :18.69   Max.   :18.36  
##  NA's   :13      NA's   :9       NA's   :9       NA's   :10     
##      Agosto        Septiembre       Octubre        Noviembre    
##  Min.   :17.62   Min.   :17.64   Min.   :18.16   Min.   :18.52  
##  1st Qu.:17.72   1st Qu.:17.73   1st Qu.:18.57   1st Qu.:18.71  
##  Median :17.85   Median :17.78   Median :18.86   Median :19.08  
##  Mean   :17.81   Mean   :17.82   Mean   :18.77   Mean   :18.94  
##  3rd Qu.:17.87   3rd Qu.:17.85   3rd Qu.:19.07   3rd Qu.:19.13  
##  Max.   :17.97   Max.   :18.20   Max.   :19.22   Max.   :19.23  
##  NA's   :8       NA's   :10      NA's   :9       NA's   :11     
##    Diciembre    
##  Min.   :18.62  
##  1st Qu.:18.91  
##  Median :19.12  
##  Mean   :19.13  
##  3rd Qu.:19.31  
##  Max.   :19.79  
##  NA's   :12

7) Gráficación de los resultados.

  • En este caso realizaremos una gráfica para análizar el comportamiento del tipo de cambio por el mes de enero de 2017, para lo cual requerimos definir las varibles para la elaboración de la gráfica. El tipo de gráfica seleccionada requiere definir las variables “x” y “y”, en este caso, nuestro interés designar a “x” como los días y asignar a “y” como los tipos de cambio, con esto conoceremos como se comportó el tipo de cambio por cada uno de los días naturales que hubo durante el mes de enero de 2017.

CONCLUSIÓN

La gráfica puede ser utilizada para análizar el comportamiento del tipo de cambio durante el mes, lo cual a su vez puede utilizarse para hacer otro tipo de análisis como el resultado cambiario de una entidad. Adicionalmente se puede obtener relevante como el mínimo y el máximo del mes, el promedio, la desviación estandar del tipo de cambio, desliz cambiario, entre otros.

Fuentes:

Equipo de Computo utilizado

print(sessionInfo(), locale = FALSE)
## R version 3.4.3 (2017-11-30)
## Platform: x86_64-w64-mingw32/x64 (64-bit)
## Running under: Windows 10 x64 (build 15063)
## 
## Matrix products: default
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
## [1] readxl_1.0.0
## 
## loaded via a namespace (and not attached):
##  [1] Rcpp_0.12.15     assertthat_0.2.0 utf8_1.1.3       crayon_1.3.4    
##  [5] digest_0.6.15    rprojroot_1.3-2  cellranger_1.1.0 backports_1.1.2 
##  [9] magrittr_1.5     evaluate_0.10.1  pillar_1.1.0     cli_1.0.0       
## [13] rlang_0.2.0      stringi_1.1.6    rmarkdown_1.8    tools_3.4.3     
## [17] stringr_1.3.0    yaml_2.1.16      compiler_3.4.3   htmltools_0.3.6 
## [21] knitr_1.20       tibble_1.4.2

Investigación:

https://support.rstudio.com/hc/en-us/articles/201057987-Quick-list-of-useful-R-packages

Manual markdown

https://www.rstudio.com/wp-content/uploads/2015/03/rmarkdown-reference.pdf;

https://www.rstudio.com/wp-content/uploads/2015/03/rmarkdown-spanish.pdf

Paquete readxl

http://readxl.tidyverse.org;

https://cran.r-project.org/web/packages/readxl/readxl.pdf;

https://github.com/tidyverse/readxl

Paquete ggplot2

https://www.rstudio.com/wp-content/uploads/2015/04/ggplot2-spanish.pdf;

http://rstudio-pubs-static.s3.amazonaws.com/2795_901030c4ef944c7797f39bcdac099d74.html