Automatización de informes en R

Ya llevamos algunos post contándote las bondades de este lenguaje de programación y todo lo que te permite hacer con tus datos, en este caso queremos hablarte de las posibilidades que hay para la automatización de informes en R.

RMarkdown nos ofrece la posibilidad de alternar código ejecutable en R (y sus outputs) con texto e imágenes. De esta manera podemos obtener informes visualmente agradables a la vez que compartimos código.

En ocasiones generamos un informe que hay que actualizar periódicamente. Supongamos que en el código hemos definido las fechas de un periodo de consulta de manera dinámica y cada primero de mes hemos de publicarlo. ¿Qué ocurre si cae en fin de semana o estamos de vacaciones? ¡El mundo no se acaba! La manera de automatizarlo sería programando una tarea que se ejecute con una periodicidad determinada, en este caso mensual. Este post aborda esta cuestión, haciendo uso del Programador de tareas de Windows:

1. Ir a Programador de tareas de Windows.

2. Crear tarea básica.

crear tarea básica

3. Asignar nombre a la tarea.

asignar nombre tarea

4. Fijar periodicidad.

En este apartado especificamos si queremos programar una tarea puntualmente o con una periodicidad (diaria, semanal, mensual). En nuestro caso la programaremos para lanzarse cada día 1 de mes.

periodicidad informe

fijar periodicidad

5. Fijar acción.

Damos la orden de iniciar un programa en la fecha especificada en el apartado anterior.

fijar acción

6. Especificar programa/script y argumentos.

  • Programa o script: damos la ruta al archivo ejecutable de R en nuestro ordenador (es decir, el programa encargado de ejecutar nuestro RMarkdown).
  •  Argumento: CMD BATCH “ruta del script de R que hará que el .Rmd se ejecute”. En nuestro ejemplo el archivo “run.R” (*)

programar script

(*) run.R. Nuestro script en R:

  • Especifica la ruta al directorio en que se encuentra el archivo .Rmd (el que genera el RMarkdown).
  • Llamada a la librería rmarkdown.
  • En la función render pasamos dos argumentos: el primero especifica el nombre del archivo .Rmd y el segundo el formato de salida de nuestro informe, en este caso “pdf_document” (también disponible la opción “html_document”).

función render

7. Finalizar definición de tarea.definición tarea

Al iniciarse la tarea programada, podemos comprobar en tiempo real en el Administrador de tareas que R está ejecutando.

comprobar tarea

Como resultado de la ejecución, se generan en el mismo directorio del archivo .Rmd dos archivos: un log y el pdf resultante.

directorio pdf

resultado log y pdf

NOTA: Para que se lleve a cabo correctamente la conversión a pdf es necesario tener instalado tanto pandoc como LaTeX (o MiKTeX).

Autor:

Cooking data at Metriplica.

Leave Comment

Your email address will not be published. Required fields are marked *