Reporte e informes tecnicos en R Markdown
Última actualización: 2024-11-19 | Mejora esta página
Hoja de ruta
Preguntas
- ¿Cómo se utilizan R markdown para presentar un reporte?
Objetivos
Al final de este taller usted podrá:
- Reconocer la importancia de generar informes en R Markdown
- Aprender a utilizar R markdown de forma básica
Pre requisito
Esta unidad tiene como prerequisitos:
- Introducción a R y RStudio
Tabla de contenido
- Módulo: Ciencia de datos en salud pública
- Unidad: Reporte e informes técnicos en R Markdown
- Tema 1: ¿Qué es R Markdown?
- Tema 2: Estructura de R Markdown
- Tema 3: Paso a Paso en R Markdown
- Unidad: Reporte e informes técnicos en R Markdown
Introducción
En esta unidad aprenderemos sobre el uso del formato R Markdown, el cual permite integrar código en la generación de informes sin la necesidad de importar gráficas o crear tablas manualmente. De esta manera, el formato R Markdown facilita la generación automática, actualización y redacción de informes técnicos al combinar la sintaxis del formato Markdown con código en R incrustado en el documento.
Tema 1: ¿Qué es R Markdown?
R Markdown es una extensión del formato Markdown que permite combinar texto con código R incrustado en el documento. De esta manera, los análisis y visualizaciones generados por medio del código se pueden incorporar de manera natural en el texto.
R Markdown es ampliamente utilizado por científicos de datos, analistas, investigadores y profesionales que necesitan presentar sus análisis y resultados de manera clara y reproducible. Además, es una herramienta muy valiosa para generar informes automatizados y documentos técnicos interactivos
Tema 2: Estructura de R Markdown
Un documento de R Markdown consta de tres tipos principales de elementos:
1. Yaml: Corresponde a especificaciones del estilo del documento, título, fecha, autores, etc.
2. Texto: Texto enriquecido con formato y explicaciones.
3. Chunk: Bloque de código R en donde se ejecutan y se muestran sus resultados.
Tema 3: Paso a Paso en R Markdown
A continuación, seguiremos un paso a paso para crear un R Markdown.
Paso 1. Abrir R Studio desde R Project
De acuerdo a lo aprendido en la unidad de Introducción a R y Rstudio, es recomendable tener un R project donde quedará alojado el informe de R Markdown. Abre un R Project y sigue con el Paso 2.
Paso 2. Crear un nuevo archivo R Markdown
Siguiendo la ruta File>New File>R Markdown podemos crear un archivo de R Markdown definiendo: título, autor(es) y con formato de salida preferido (html, pdf o word).
Siga los pasos, que también pueden verse en la imagen, y cree su archivo R Markdown con tu nombre y el título de Reporte.
Paso 3. Editar el archivo de R Markdown y el código
Aviso
Es importante recordar que R Markdown tiene tres secciones, todas editables: Yaml, Texto y Chunk de código.
Al haber creado su archivo de R Markdown podrá observar e identificar las diferentes secciones que se muestran en la imagen.
A continuación, veremos cómo editar cada una de estas partes:
¿Cómo editar el texto?
Para incluir el título de una sección se escribe el símbolo numeral # y a continuación el nombre de la sección en una línea única.
Para poner subtítulos se utiliza dos símbolos numeral ##.
-
Para cada subtítulo en la estructura se agrega otro símbolo numeral
Para escribir palabra en negritas use dos asteriscos a cada lado **palabra**
Para escribir una palabra en cursiva use un asterisco a cada lado *palabra*(uno a cada lado)
Para situar el texto en un bloque aparte, se antecede este texto con el símbolo > en una línea única.
¿Cómo editar el chunk de código?
Para incluir código en R, es necesario introducir un chunk en el documento marcando en la barra de herramientas el icono +C de color verde como se muestra en la siguiente imagen.
Al dar click en este ícono, aparecerá un espacio delimitado por los siguientes símbolos que corresponde al chunk:
```{r}
```
Luego que haya creado el chunk debemos cargar las librerías para esta práctica. En el chunk cargamos las librerías a utilizar en R. En este caso, necesitaremos dos
```{r}
R
library(tidyverse)
library(knitr)
```
Ahora debemos correr el Chunk dando click en el ícono de
“Run
” y seleccionando el Chunk que queremos correr.
Otra opción es dar click al ícono de play verde que se encuentra en la parte superior derecha de cada Chunk.
Especificar configuración del chunk
Dentro de un “chunk”, podemos elegir si queremos que el código se
muestre en el reporte impreso o no; utilizando los comandos
“echo = FALSE
” (para ocultarlo) o
“echo = TRUE
” (para mostrarlo).
La siguiente tabla incluye otras opciones que se pueden utilizar para
configurar un chunk. En la tabla se muestra que tipo de salidas
quedan suprimidas al especificar cada opción como
FALSE
:
Por ejemplo, en nuestra práctica especificaremos que se ejecute el código, como se muestra aquí.
```{r, eval = TRUE}
```
Hacer tablas en R Markdown
Aviso
La tabla de datos para esta práctica será la misma de la Unidad de
Introducción a la visualización de datos en R con ggplot2
.
Puede encontrarla en: https://github.com/TRACE-LAC/TRACE-LAC-data/blob/main/otros/muestra_covid.RDS?raw=true
Para hacer tablas en R Markdown podemos utilizar la función
kable
de la librería knitr
, como se muestra a
continuación:
R
library(knitr)
library(tidyverse)
dat <- readRDS("data/muestra_covid.RDS")
covid_paises <- dat %>%
group_by(nombre_del_pais) %>%
summarise (casos = n()) %>%
filter (casos > 300)
kable(covid_paises)
Como resultado, obtenemos la siguiente tabla:
nombre_del_pais | casos |
---|---|
Argentina | 5059 |
Bolivia | 5056 |
Brasil | 4886 |
Chile | 5017 |
Colombia | 5189 |
Costa Rica | 4981 |
Cuba | 4988 |
Ecuador | 5082 |
El Salvador | 4872 |
Guatemala | 5078 |
Haití | 4894 |
Honduras | 5014 |
México | 5025 |
Nicaragua | 4995 |
Panamá | 5036 |
Paraguay | 4951 |
Perú | 4923 |
República Dominicana | 5021 |
Uruguay | 4986 |
Venezuela | 4947 |
Poner parámetros automatizados en el texto
En un reporte también es posible combinar código y texto, utilizando los resultados obtenidos en el código como parte del texto del reporte. Es decir, para evitar que debamos poner un resultado manualmente en el texto del reporte, podemos utilizar el resultado que obtuvimos al ejecutar el chunk y hacer que este resultado aparezca en el texto de manera automática. Para esto, simplemente se debe parametrizar un valor y luego incluirlo en el texto usando su nombre correspondiente.
Por ejemplo, para calcular el total de casos de COVID-19 de sexo
femenino en nuestro conjunto de datos de datos dat
dentro
de un chunk de R haríamos lo siguiente:
R
total_casos_fem <- nrow(dat %>% filter (sexo == "femenino"))
Ahora, si queremos incluir este resultado en el texto del reporte, debemos especificar el parámetro que queremos usar de esta manera ` r total_casos_fem `, y por ejemplo escribir directamente como texto:
El total de casos de sexo femenino es ` r total_casos_fem`
Cuyo valor debe coincidir con el valor que obtenemos al imprimir el
objeto total_casos_fem
R
total_casos_fem
SALIDA
[1] 52453
Aviso
Al tejer el informe tendremos una línea similar a esta:
El total de casos de sexo femenino es 52453
Para ver cómo queda combinado el resultado del código con este texto debemos seguir el siguiente paso.
Paso 4. “Tejer” (generar) el informe
Para “tejer” el informe, es decir, generar el informe en un formato específico (HTML, PDF o Word), debemos dar click en el símbolo “Knit” en la parte superior del editor del archivo de Rmarkdown. Tal como se ve en la siguiente imagen:
Después de este paso debe aparecer el informe final en la presentación que hayamos seleccionado (html, pdf o word).
Desafío
Observe cómo aparece la tabla y el texto del total de casos de sexo femenino.
¡Felicitaciones, ha producido su primer reporte R Markdown en html!
Puntos Clave
Revise si al final de esta lección adquirió estas competencias:
- Reconocer la importancia de generar informes en R Markdown
- Aprender a utilizar R markdown de forma básica