martes, 8 de mayo de 2012

knitr: Un paquete avanzado para la edición de informes dinámicos

El paquete knitr de Yihui Xie se ha diseñado para superar algunos problemas de Sweave y avanzar en la edición de informes dinámicos con R.

Una fórmula del propio autor resume el conjunto de aplicaciones incluidas en el paquete:

knitr ≈ Sweave + cacheSweave + pgfSweave + weaver + R2HTML::RweaveHTML + highlight::HighlightWeaveLatex + 0.2 * brew + 0.1 * SweaveListingUtils + more

Las ventajas sobre Sweave son múltiples. En primer lugar y lo más evidente es el coloreado del código, pero también la habilidad para formatear el código automáticamente.
Este paquete incluye el soporte para varios dispositivos gráficos, entre ellos el tikzDevice que traduce el gráfico a código LaTeX y, por lo tanto, escribir fórmulas en LaTeX dentro del gráfico en la misma fuente que el texto.
Entre otras opciones, se permite controlar el tamaño de los gráficos o incluir dos gráficos de diversos tipos (normal y ggplot2, por ejemplo) en la misma figura.
El paquete knitr recoge lo mejor de otros paquetes que ya utilizaban el almacenamiento en caché para los objectos, de forma que se evitan cálculos repetidos innecesarios con el consiguiente ahorro de tiempo, incluso con los gráficos.

Además, los viejos archivos .Rnw de Sweave se pueden reciclar fácilmente.
Lo mejor es ver los ejemplos que incluye el propio manual y juzgar entonces sus muchas ventajas.

Para los que no saben LaTeX o no necesitan documentos que incluyan muchas fórmulas, el paquete knitr y la nueva versión 0.96 de RStudio (hoy todavía en desarrollo) incluyen la edición de documentos Markdown.
Un documento Markdown no es más que un documento de texto plano que incluye algunas marcas para darle formato y convertirlo fácilmente a otro formato como HTML.
En esta nueva versión de RStudio ya podremos crear archivos con formato Markdown y extensión .Rmd. Un botón MD en la barra de herramientas mostrará una guía rápida para aprender a escribir en este formato en 3 minutos.
El formato Markdown permite escribir títulos con # y listas con el guión -, de manera que es fácil de escribir y de recordar, al mismo tiempo que es legible.
Con el paquete knitr podemos intercalar código R y cuando pulsemos el botón Knit HTML obtendremos un documento HTML con el texto y los resultados. ¿No es fantástico? Una forma sencilla de redactar informes dinámicos.



Enlaces:

knitr: http://yihui.name/knitr/

Markdown + knitr + RStudio

Uso del formato Markdown para escribir páginas web

No hay comentarios:

Publicar un comentario