Proceso del Tidyverse
Aquí aprenderemos sobre el paquete rmarkdown, el cual es
una herramienta para integrar texto, código y resultados. Puedes usarlo
en modo notebook, es decir, en un entorno interactivo de ejecución de
código para la comunicación de analista-a-analista, y en modo reporte
para la comunicación de analista-a-tomadores-de-decisión.
Gracias al potencial de los formatos de R Markdown, incluso puedes usar el mismo documento para ambos propósitos.
Con Rmarkdown se pueden obtener una gran variedad de salidas que puedes generar usando la librería R Markdown, incluyendo dashboards (tableros de control), sitios web, y libros.
rmarkdownEl paquete rmarkdown provee un marco de escritura para
ciencia de datos, que combina tu código, sus resultados y tus
comentarios en prosa. Los documentos de R Markdown son completamente
reproducibles y soportan docenas de formatos de salida tales como PDFs,
archivos de Word, presentaciones y más.
Puedes encontrar más información del paquete rmarkdown
en los Cheat Sheets https://www.rstudio.com/resources/cheatsheets/
Para crear un archivo Rmarkdown debes ir a
File -> New File -> Rmarkdown..., aquí te aparecerá
una ventana donde deberás indicar el nombre del archivo que deseas crear
y por el momento elegiremos html, y creamos con OK.
Comparación de las coordenadas en un gráfico (Coordenates Layer)
Contiene tres tipos importantes de contenido:
Un encabezado YAML (opcional) rodeado de —
Bloques de código de R rodeados de ```.
Texto mezclado con formateos de texto simple como # Encabezado e itálicas.
YAML es la sigla en inglés de la frase “yet another markup language”, que significa “otro lenguaje de marcado más”. Este lenguaje de marcado está diseñado para representar datos jerárquicos de modo tal que sea fácil de escribir y leer para humanos. R Markdown lo utiliza para controlar muchos detalles del output.
Este encabezado determina los parámetros generales de formato para el reporte a compilar. En lenguaje computacional se entiende como los metadatos del documento; esto es, información que define el formato del archivo resultante, más no su contenido:
Título (title). Texto entre comillas que servirá de título general del documento.
Subtítulo (subtitle). Texto entre comillas que servirá de subtítulo para el título general del documento.
Autor (author). Texto entre comillas para indicar el nombre del o los autores.
Resumen (Abstract). Texto entre comillas para indicar el resumen del documento.
Fecha (date). Campo para indicar la fecha. En el texto, con la expresión today, se solicita que imprima la fecha actual según el calendario del sistema operativo.
Formato de bibliografía (csl). Nombre de un archivo de extensión .csl para indicar el formato de referencias en el cuerpo del texto y el listado de bibliografía al final del documento. La sigla refiere a Estilo del Lenguaje de Referencias (Citation Language Style) y permite definir si se usarán citas al estilo APA, ASA, Chicago, etc. Se adecúa a los diferentes requerimientos de referencias bibliográficas.
Los argumentos dentro del apartado resultado (output) son los siguientes:
pdf_document: indica el formato preestablecido para compilar el documento. En este caso, se trata de un PDF. Puede ser html_document o word_document.
fig_caption: indica si las figuras deben incorporar leyendas. Es true por default.
number_sections: si está definido como yes define que se numerarán los títulos y sutítulos a lo largo del documento, de manera automática y correlativa.
toc: es la abreviación de table of contents.
Muchos aspectos de la plantilla LaTeX utilizada para crear documentos PDF se pueden personalizar utilizando metadatos YAML de nivel superior (tenga en cuenta que estas opciones no aparecen debajo de la sección de salida, sino que aparecen en el nivel superior junto con el título, el autor, etc.) . Por ejemplo:
fontsize: Tamaña de la fuente (10pt, 11pt, or 12pt).
documentclass: Clases de documentos de LaTeX (article, book, etc.)
linkcolor, urlcolor, citecolor: Colores para links externos, internos y citas.
Puedes ver todas las opciones para personalizar la salida LaTex (pdf) en https://www.rstudio.com/wp-content/uploads/2015/03/rmarkdown-reference.pdf.
Existe una hoja de referencia útil que la obtienes en Help > Markdown Quick Reference.
Podemos utilizar dos formatos. El primero es sencillo, como sigue a continuación:
“Comprender las cosas que nos rodean es la mejor preparación para comprender las cosas que hay mas allá.”
— Hipatia
El segundo requiere que instales el paquete tufte.
“Comprender las cosas que nos rodean es la mejor preparación para comprender las cosas que hay mas allá.”
Ejemplo 1: Utilice la integración por partes para evaluar la siguiente integral \(\displaystyle\int x e^x dx\).
Ejemplo 2: Utilice la integración por partes para evaluar la siguiente integral: \[\displaystyle\int x e^x dx\]
Puedes encontrar más fórmulas en el siguiente link.
Para aprender más acerca de R, te recomiendo el libro “R para Ciencia de Datos” de Wickham & Grolemund (2017). Lo puedes encontrar de forma gratuita en la web en el link R para Ciencia de Datos.
Para que la bibliografía conecte, deberás hacer lo siguiente:
@Book{hadley2021,
Title = {R for Data Science (2e)},
Author = {Hadley Wickham and Garrett Grolemund},
Publisher = {O'Reilly},
Year = {2017}
}
bibliography: biblio.bib donde debes especificar el nombre
del archivo .bib que debe estar en el mismo directorio que estás
trabajando y csl: apa.csl donde especificas el formato de
la bibliografía, en este caso he utilizado el formato apa, puedes
encontrar más estilos de bibliografía en https://github.com/citation-style-language/styles.Hay tres maneras para hacerlo:
Con el atajo de teclado: Cmd/Ctrl + Alt + I
Con el ícono “Insert” en la barra de edición
Tipeando manualmente los delimitadores de bloque
{r} y.
El paquete knitr provee casi 60 opciones que puedes usar
para personalizar tus bloques de código. Puedes ver la lista completa en
Opciones de bloques.
No muestra el código pero lo ejecuta y no muestra resultados se debe
agregar include = FALSE. Puede servir para cargar los
paquetes o la data.
Muestra el código pero no lo ejecuta, se agrega
eval = FALSE.
# Media de largo y ancho de pétalos y sépalos de las flores por especie
flores %>%
group_by(Especie) %>%
drop_na() %>%
summarise(
Largo_sep_media = mean(Largo.Sepalo),
Ancho_sep_media = mean(Ancho.Sepalo),
Largo_pet_media = mean(Largo.Petalo),
Ancho_pet_media = mean(Ancho.Petalo))
No se muestra el código pero se visualizan los resultados con
echo = FALSE.
## # A tibble: 3 × 5
## Especie Largo_sep_media Ancho_sep_media Largo_pet_media Ancho_pet_media
## <fct> <dbl> <dbl> <dbl> <dbl>
## 1 setosa 5.01 3.43 1.46 0.246
## 2 versicolor 5.94 2.77 4.26 1.33
## 3 virginica 6.59 2.97 5.55 2.03
Continúa renderizando aunque el código muestre un error. Muestra las
advertencias del código con message=TRUE, warning=TRUE.
# Media de largo y ancho de pétalos y sépalos de las flores por especie
flores %>%
group_by(Especie) %>%
drop_na() %>%
summarise(
Largo_sep_media = mean(Largo.Sepalo),
Ancho_sep_media = mean(Ancho.Sepalo),
Largo_pet_media = mean(Largo.Petalo),
Ancho_pet_media = mean(Ancho.Petalo))
## # A tibble: 3 × 5
## Especie Largo_sep_media Ancho_sep_media Largo_pet_media Ancho_pet_media
## <fct> <dbl> <dbl> <dbl> <dbl>
## 1 setosa 5.01 3.43 1.46 0.246
## 2 versicolor 5.94 2.77 4.26 1.33
## 3 virginica 6.59 2.97 5.55 2.03
Muestra el código y lo ejecuta:
# Media de largo y ancho de pétalos y sépalos de las flores por especie
flores %>%
group_by(Especie) %>%
drop_na() %>%
summarise(
Largo_sep_media = mean(Largo.Sepalo),
Ancho_sep_media = mean(Ancho.Sepalo),
Largo_pet_media = mean(Largo.Petalo),
Ancho_pet_media = mean(Ancho.Petalo))
## # A tibble: 3 × 5
## Especie Largo_sep_media Ancho_sep_media Largo_pet_media Ancho_pet_media
## <fct> <dbl> <dbl> <dbl> <dbl>
## 1 setosa 5.01 3.43 1.46 0.246
## 2 versicolor 5.94 2.77 4.26 1.33
## 3 virginica 6.59 2.97 5.55 2.03
Podemos incluir tablas de dos formas: creándolas o haciendo consultas de la data.
Para crear una tabla, podemos formarla como sigue:
| Derecha | Izquierda | Default | Centro |
|---|---|---|---|
| 12 | 12 | 12 | 12 |
| 123 | 123 | 123 | 123 |
| 1 | 1 | 1 | 1 |
Podemos dar un mejor formato a nuestras tablas con knitr::kable e incluir una referencia a la tabla.
knitr::kable(
flores %>%
group_by(Especie) %>%
drop_na() %>%
summarise(
Largo_sep_media = mean(Largo.Sepalo),
Ancho_sep_media = mean(Ancho.Sepalo),
Largo_pet_media = mean(Largo.Petalo),
Ancho_pet_media = mean(Ancho.Petalo)),
caption = "Promedio de pétalos y sépalos por especie"
)
| Especie | Largo_sep_media | Ancho_sep_media | Largo_pet_media | Ancho_pet_media |
|---|---|---|---|---|
| setosa | 5.006 | 3.428 | 1.462 | 0.246 |
| versicolor | 5.936 | 2.770 | 4.260 | 1.326 |
| virginica | 6.588 | 2.974 | 5.552 | 2.026 |
Con código css:
Rmarkdown de Allison Horst
En un chunk con el paquete knitr:
Rmarkdown de Allison Horst
También puede incrustar gráficos, por ejemplo:
Podemos incluir código dentro del texto, por ejemplo:
Nuestra data flores contiene la información de 150 flores. Los pétalos de las 3 especies de flores descritas tienen una dimensión promedio de sus pétalos de 1.2 cm de ancho y 3.76 cm de largo.
La salida para este reporte es
output: html_document: default. Los documentos pueden ser
publicados en RPubs, RStudio Connect, Sharepoint, en un sitio web
personal o Google drive.
Debes crear una cuenta en RPubs https://rpubs.com/users/new.
Haremos una prueba en RPubs con el documento ‘prueba_html’.
La salida para este reporte es
output: word_document: default. Haremos una prueba en RPubs
con el documento ‘prueba_html’.
La salida para este reporte es
output: pdf_document: default. Haremos una prueba en RPubs
con el documento ‘prueba_pdf’.
La salida para este reporte es
output: powerpoint_presentation. Haremos una prueba en
RPubs con el documento ‘prueba_ppt’.
Git es un sistema de control de versiones que le permite realizar un seguimiento de quién realizó cambios y cuándo, y tiene opciones para actualizar fácilmente una versión compartida o pública de su código en github.com.
Previamente, debes hacer es lo siguiente:
Para conectar RStudio con Github, debemos hacer lo siguiente:
Tools y escoger la opción
Global Options..., buscamos la pestaña Git/SVN
y debemos asegurarnos de tener la dirección del ejecutable de Git:En caso de no conocer la ubicación del ejecutable de Git, podemos
averiguarlo desde la Terminal con $ which git.exe.
Puedo crear un nuevo proyecto o elegir uno existente, y luego
automáticamente en el panel de environment aparecerá una pestaña que
dice Git y un botón en la barra de herramientas que indica
Git.
Ver más en https://swcarpentry.github.io/git-novice-es/14-supplemental-rstudio/index.html.