Reportes reproducibles
Es posible que en tu trabajo tengas que presentar informes o resultados de tu análisis de datos. Tal vez te hayas encontrando guardando una y otra vez gráficos y tablas o copiando resultados de un archivo al otro hasta que el informe quedó como querías. Los archivos y el paquete RMarkdown o desde hace poco Quarto vienen al rescate.
Un archivo de R Markdown (generalmente con la extensión .Rmd
), a diferencia de un script .R
, es un archivo de texto plano que combina código de R que genera resultados (gráficos, tablas, etc…) y el texto que lo describe. Al poder intercalar cálculos y gráficos con su análisis o explicación, se unifica el flujo de trabajo y deja de ser necesario guardar figuras o tablas para luego insertarlas en un documento de texto. Esto es muy importante si buscamos que nuestro trabajo sea reproducible, pero además ahorra tiempo.
Creando archivos .Rmd
En RStudio podés crear un nuevo archivo de R Markdown con el menú desplegable:
Y se abrirá un menú donde podés agregar el título de tu informe y tu nombre. Por ahora vamos a usar el formato HTML como salida, pero hay muchos otros formatos de salida posibles.
Al aceptar, se abrirá un nuevo archivo con una plantilla de ejemplo (en inglés).
Un archivo de Quarto (generalmente con la extensión .qmd
), a diferencia de un script .R
, es un archivo de texto plano que combina código de R que genera resultados (gráficos, tablas, etc…) y el texto que lo describe. Al poder intercalar cálculos y gráficos con su análisis o explicación, se unifica el flujo de trabajo y deja de ser necesario guardar figuras o tablas para luego insertarlas en un documento de texto. Esto es muy importante si buscamos que nuestro trabajo sea reproducible, pero además ahorra tiempo. Una ventaja por sobre R Markdown es que Quarto es independiente del lenguaje de programación. En este caso estamos usando R y RStudio pero podríamos trabajar con python y notebooks de jupyter y aprovechar Quarto.
Creando archivos .qmd
En RStudio podés crear un nuevo archivo de Quarto con el menú desplegable:
Y se abrirá un menú donde podés agregar el título de tu informe y tu nombre. Por ahora vamos a usar el formato HTML como salida, pero hay muchos otros formatos de salida posibles.
Al aceptar, se abrirá un nuevo archivo con una plantilla de ejemplo (en inglés).
Para generar el archivo de salida, el paquete knitr (que viene de tejer en inglés) ejecutará el código en una sesión independiente de R e interpretará el texto, su formato y cualquier otra cosa que agreguemos (por ejemplo imágenes o links externos). Esto significa que nuestro archivo debe tener todo lo necesario para generar el análisis y si nos olvidamos de algo va a dar error.
Por esta razón es recomendable knitear o renderizar el archivo seguido, para encontrarnos con los errores a tiempo y de paso asegurarnos que el análisis es reproducible.
Estructura de un .Rmd
Cualquier archivo de este tipo tiene 3 partes principales:
- El encabezado o yaml que determina que pinta tendrá el archivo de salida, por ejemplo en formato html. También se puede incluir información sobre el autor, la fecha, si queremos o no una tabla de contenidos y muchas cosas más. Hay pequeñas diferencias entre R Markdown y Quarto.
- El texto o prosa ya que puede estar a lo largo de todo el documento. Para darle formato a los títulos o por ejemplo resaltar parte del texto usando negrita se usa Markdown, un lenguaje que a diferencia de html es legible aún si no está compilado o en su versión final.
- El código en bloques o chuncks. Dentro de un chunk el código de R puede ejecutarse al igual que en un script normal y cualquier comentario o explicación debe tener al principio un
#
para que R lo interprete correctamente.