#' Aquí hay algo de prosa en un comentario muy especial. Resumamos el conjunto de datos integrado `VADeaths`.
# Aquí hay un comentario de código normal, que permanecerá como tal.
summary(VADeaths)
#' Aquí hay algo más de prosa. Puedo usar la sintaxis habitual de Markdown para hacer cosas
#' **negritas** o *italicas*. Usemos un ejemplo de la ayuda `dotchart()` para
#' hacer un diagrama de puntos de Cleveland a partir de los datos de `VADeaths`. Incluso me molesto en nombrar
#' este fragmento, entonces el PNG resultante tiene un nombre decente.
#+ dotchart
dotchart(VADeaths, main = "Tasas de mortalidad en Virginia - 1940")
19 Renderizar un script R
Un hecho subestimado es que mucho de lo que puedes hacer con R Markdown, también puedes hacerlo con un script R.
Si está en modo de análisis y desea un informe como efecto secundario, escriba un script R. Si está escribiendo un informe con mucho código R, escriba .Rmd
. En cualquier caso, renderice en Markdown y/o HTML para comunicarse con otros seres humanos.
- En R Markdown, la prosa es de nivel superior y el código está dividido en fragmentos.
- En los scripts R, el código es de nivel superior y la prosa se incluye en los comentarios. Utilizará
#'
para solicitar que ciertos comentarios aparezcan como prosa de nivel superior en la salida renderizada.
Continuará especificando cosas como el formato de salida a través de YAML en la parte superior del archivo. Esto deberá comentarse con #'
.
19.1 Transforme RMarkdown en un script R renderizable
Consiga un archivo RMarkdown que funcione, como el que creó en su prueba de Rmd. O utilice el documento estándar .Rmd
que RStudio crea con File > New File > R Markdown ….
Guarde el archivo como foo.R
, en lugar de foo.Rmd
. Sí, por un breve momento, tendrás R Markdown guardado como un script R, pero eso no será así por mucho tiempo.
Transforme RMarkdown a R:
¿Algo que no sea código R? ¿Te gusta el YAML y la prosa? Protégelo con comentarios estilo roxygen: comienza cada línea con
#'
.-
¿Algo que sea código R? Déjelo existir “tal cual” como código de nivel superior. Eso significa que necesitarás cambiar la sintaxis de los encabezados de fragmentos de R de esta manera:
Antes:
```{r setup, include = FALSE}
Después:#+ r setup, include = FALSE
Reemplace las comillas invertidas iniciales y la llave de apertura con
#+
.
Eliminar la llave final.
Elimina las 3 comillas invertidas que finalizan cada fragmento.
Renderice el script R a través de uno de estos métodos:
- Haga clic en el icono “notebook” en RStudio para “Compile Report”.
- En RStudio, haga File > Knit Document.
- En R, ejecute
rmarkdown::render("foo.R")
.
Obtendrá un informe de markdown y/o HTML, al igual que con R Markdown.
Si tiene problemas para realizar todos los cambios necesarios y se siente frustrado, vea a continuación un ejemplo que puede copiar y pegar.
Todos los consejos de flujo de trabajo de la prueba de Rmd se aplican aquí: cuando escriba un script de un análisis, preséntelo en markdown, confirme el .R
, el .md
, cualquier figura asociada y envíelo a GitHub. Los colaboradores pueden ver su código, pero también explorar los resultados sin tener que descargar y ejecutar el código. Esto hace que el estado actual de su análisis sea accesible para alguien que ni siquiera ejecuta R o que quiere echar un vistazo rápido a las cosas desde un teléfono celular o mientras está de vacaciones.
19.2 Escribir un script R listo para renderizar
En lugar de transformar un archivo RMarkdown, creemos directamente un script R listo para renderizar.
Cree un nuevo script R y copie/pegue este código en él.
Renderice el script R mediante uno de estos métodos:
- Haga clic en el icono “notebook” en RStudio para “Compile Report”.
- En RStudio, haz File > Knit Document.
- En R, haz
rmarkdown::render("YOURSCRIPT.R")
.
¡Disfruta de tu atractivo informe casi sin esfuerzo! En serio, todo lo que tenías que hacer era pensar en cuándo usar los comentarios especiales #'
para promocionarlo a un texto bien renderizado.
Basándonos en los consejos de flujo de trabajo en Prueba de Rmd, agreguemos algo de contenido de YAML, comentado adecuadamente con #'
, y solicitemos github_document
como formato de salida. Aquí está el guión completo nuevamente:
#' ---
#' title: "¡Se pueden renderizar scripts R!"
#' output: github_document
#' ---
#'
#' Aquí hay algo de prosa en un comentario muy especial. Resumamos el conjunto de datos integrado `VADeaths`.
# Aquí hay un comentario de código normal, que permanecerá como tal.
summary(VADeaths)
#' Aquí hay algo más de prosa. Puedo usar la sintaxis habitual de Markdown para hacer cosas
#' **negritas** o *italicas*. Usemos un ejemplo de la ayuda `dotchart()` para
#' hacer un diagrama de puntos de Cleveland a partir de los datos de `VADeaths`. Incluso me molesto en nombrar
#' este fragmento, entonces el PNG resultante tiene un nombre decente.
#+ dotchart
dotchart(VADeaths, main = "Tasas de mortalidad en Virginia - 1940")
Aquí detrás de escena hemos usado rmarkdown::render()
para representar este script y puedes ir y verlo en GitHub.