3.1 RMarkdown
El paquete rmarkdown
permite combinar Markdown con R para la generación de documentos. Markdown se diseñó inicialmente para la creación de páginas web a partir de documentos de texto de forma muy sencilla y rápida (tiene unas reglas sintácticas muy simples).
Es lo que se conoce como un lenguaje de marcado ligero, tiene unas reglas sintácticas muy simples y se busca principalmente la facilidad de lectura.
Posteriormente se fueron añadiendo funcionalidades, por ejemplo para incluir opciones de publicación en muchos otros formatos.
La implementación original de Markdown es de John Gruber,
pero actualmente están disponibles múltiples dialectos (sobre todo para publicar en gestores de contenido).
RMarkdown utiliza las extensiones de la sintaxis proporcionada por Pandoc (ver Apéndice A), y adicionalmente permite la inclusión de código R.
Al renderizar un fichero RMarkdown se generará un documento que incluye el código R y los resultados incrustados en el documento5.
En RStudio basta con hacer clic en el botón Knit.
En R se puede emplear la funcion render
del paquete rmarkdown
(por ejemplo render("Informe.Rmd")
).
También se puede abrir directamente el informe generado:
library(rmarkdown)
browseURL(url = render("Informe.Rmd"))
A continuación se darán algunos detalles sobre RMarkdown (y las extensiones Markdown de Pandoc que admite: notas al pie de página, tablas, citas, ecuaciones LaTeX…). Para más información (incluyendo introducciones a Markdown y RMarkdown), se recomienda consultar alguna de las numerosas fuentes disponibles, comenzando por la web oficial http://rmarkdown.rstudio.com/.
También se dispone de información en la ayuda de RStudio:
Help > Markdown Quick Reference
Help > Cheatsheets > R Markdown Cheat Sheet
Help > Cheatsheets > R Markdown Reference Guide
Otras fuentes permiten obtener documentación más detallada, como por ejemplo:
Web original del paquete
knitr
(Xie 2021): knitr; Elegant, flexible, and fast dynamic report generation with R.Xie, Allaire, and Grolemund (2018) : R Markdown: The Definitive Guide.
Extensiones RMarkdown de Pandoc: Pandoc’s Markdown.
References
Se llama al paquete
knitr
para “tejer” el código de R y los resultados en un fichero Markdown, que posteriormente es procesado con pandoc↩︎