tutorial the sheet reportes presentaciones guide examples ecuaciones descargar definitive cheat r r-markdown pandoc

the - Configuración del título del documento en Rmarkdown desde parámetros



r markdown tutorial (2)

Tengo una plantilla Rmarkdown que funciona bien, y la he parametrizado para poder generar variantes del mismo informe a partir de diferentes fuentes de datos. Sin embargo, me gustaría cambiar el título del informe en cada caso. ¿Cómo puedo hacer eso?

Aquí está el encabezado YAML que tengo hasta ahora:

--- title: "My Title" author: "Me, Inc." date: "August 4, 2015" output: pdf_document params: title: default ---

He intentado usar params=list(title="ASDF") en la llamada a rmarkdown::render , y aunque mi código puede ver esa variable, no cambia el título. También he intentado usar r params$title en el YAML, pero eso da un error de sintaxis.

¿Hay algo más que debería estar intentando? ¡Gracias!


Agregando esta respuesta, ya que ayuda a dinamizar los títulos de R markdown.

Simplemente use! R seguido del nombre del objeto definido (test_title en el caso a continuación) para hacer que el título sea dinámico.

--- output: pdf_document params: set_title: !r test_title --- --- title: `r params$set_title` ---


Intente usar un segundo bloque de metadatos YAML y coloque los metadatos parametrizados allí.

Conseguí el siguiente código para trabajar como se esperaba (es decir, producir un título de documento de la lista de parámetros):

--- output: html_document params: set_title: "My Title!" --- --- title: `r params$set_title` ---

La documentación de RMarkdown señala que los bloques de metadatos YAML se combinan mediante Pandoc. Use el primer bloque para definir el conjunto de parámetros y el segundo para usar los parámetros como metadatos. Knitr ejecutará el código R para interpretar los parámetros en el segundo bloque. Luego Pandoc combinará los bloques de metadatos juntos.

Actualización (2017):

Esto se puede lograr en un solo bloque, así:

--- output: html_document params: set_title: "My Title!" title: "`r params$set_title`" ---

Esto funciona porque el título viene después de la definición de params . Pongo comillas alrededor del código R en línea para evitar "errores de escáner".