Aprendiendo a crear informes automáticos desde R con rmarkdown y knitr

La semana pasada asistí a un encuentro de RugBcn, el Grupo de Usuarios de R de Barcelona, que tenía por objetivo mostrar cómo crear informes automáticos directamente desde R gracias a las librerías rmarkdown y knitr. El título del evento era 'Automatic Reporting with rmarkdown'.

El evento, presentado por Carlos Bort Escabias y Lluís Ramon Callao estuvo muy bien, y fue muy práctico, ya que pudimos comprobar con nuestros propios portátiles cómo funcionaban estas librerías para generar reports desde R.

Evento de R Automatic Report with rmarkdown

En principio, a menos que quieras hacer birguerías, no era muy complicado, y los resultados eran bastante sorprendentes. Con un poco de código bastante intuitivo, los llamados chunks de rmarkdown resultaba sencillo embeber desde el mismo RStudio comandos, gráficas y resultados de R en documentos PDF, Word o HTML.

Para mostrar rápidamente cómo funciona lo mejor el primer ejemplo que hicimos, que con este código se genera el HTML de la parte inferior, o el documento word que se adjunta. Los chunks, que es lo que RStudio interpreta para crear Resultados de R en los documentos, son los bloques que comienzan y terminan con tres comillas simples (''')

---
title: "Primer documento rmarkdown"
author: "Carlos"
date: "9 de marzo de 2015"
output: word_document
---

This is an R Markdown document. Markdown is a simple formatting syntax for authoring 
HTML, PDF, and MS Word documents. 
For more details on using R Markdown see .

When you click the **Knit** button a document will be generated that includes both 
content as well as the output of any embedded R code chunks within the document. 
You can embed an R code chunk like this:

```{r}
summary(cars)
```

You can also embed plots, for example:

```{r, echo=FALSE}
plot(cars)
```

Note that the `echo = FALSE` parameter was added to the code chunk to prevent printing of the R code that generated the plot.

 

HTML que genera el código anterior desde Rstudio:


Primer documento rmarkdown

Carlos

9 de marzo de 2015

This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.

When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:

summary(cars)
##      speed           dist      
##  Min.   : 4.0   Min.   :  2.00 
##  1st Qu.:12.0   1st Qu.: 26.00 
##  Median :15.0   Median : 36.00 
##  Mean   :15.4   Mean   : 42.98 
##  3rd Qu.:19.0   3rd Qu.: 56.00 
##  Max.   :25.0   Max.   :120.00

You can also embed plots, for example:

Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.


 

Y para ver algo más completo, nada mejor que la propia presentación del evento, que estaba preparada con rmarkdown, y que Lluís Ramón ha compartido con todos en github, incluyendo tanto el código fuente (el fichero .Rmd) como el resultado HTML.

Para comprobar que funciona perfectamente, he subido el fichero HTML al area de demos de Dataprix, y ya tenemos otro sitio donde consultar la presentación: Automatic Reporting with rmarkdown

 

Attachment Size
Primer-documento-rmarkdown.docx 162 bytes