library(dplyr)
library(readr)
library(ggplot2)
library(knitr)Actividad 1.3. Quarto
1 Introducción
Ejercicio Tutorial acerca de Quatro.
1.1 Texto en negrita
A continuación cambiaré el texto a negrita y posteriorment a cursiva tal y como se pide en el tutorial. Lo primero que haremos es pulsar el botón Render. Como ve, R nos lee el documento de Quarto y nos convierte su contenido en un archivo Html. Ve comparando ambos documentos y observa cómo los elementos de Quarto se traducen a Html.
1.2 Texto en cursiva
A continuación intentamos resumir, de forma práctica, los elementos esenciales de un documento de Quarto.
1.3 Enlace a una página web:
Aqui podemos encontrar el link a una página web: (Web)
1.4 Lista con dos items:
A continuación se verán dos items:
- Item 1.
- Item 2.
1.5 Imagenes:
Estos son los logos de RMarkdown y Knitr. Si queremos poner imágenes directamente, utilizaremos el signo de exclamación, seguido de los corchetes y entre paréntesis el enlace a la imagen.
2 Chunks
Los chunks sirven para añadir código de R al texto. Los chunks son cajas grises que encontraremos a lo largo de este script de Quarto. Dentro de los chunks, pondremos el código de R. Para crear nuevos chunks:
- Podemos simplemente seleccionar un chunk ya creado y copiar y enganchar su contenido.
- O, alternativamente, podemos teclear
Ctrl+Alt+I(Mac:Cmd+Option+I).
Opcionalmente, podemos poner un título en los chunks. El primer chunk que hemos creado al inicio del documento se llama setup. El próximo chunk que vamos a crear se llamará packages. Y dentro del chunk, cargamos los paquetes dplyr, readr, ggplot2 y knitr.
Observe cómo Quarto ha convertido esta parte en Html. Por defecto, Quarto nos enseña el código del chunk y todos los resultados de produce. Como siempre que cargamos el paquete dplyr nos aparecen unos mensajes de aviso en la consola, también veremos estos mensajes impresos en el documento Html.
Como no nos interesa que aparezcan estos mensajes, vamos a eliminarlos y así de paso aprendemos más sobre el funcionamiento de los chunks:
- En el chunk que hemos creado previamente, y después de la palabra
packages, añadiremos una coma seguido demessage = FALSE. - El contenido de dentro de las claves debería quedar de la siguiente manera:
{r packages, message = FALSE}. - Ahora volvemos a generar Html. Pulsamos el botón Render y observamos los cambios.
Como vemos, el chunk contiene código e indicaciones sobre cómo se mostrará el código en Html. Las indicaciones que podemos dar son las siguientes:
message: TRUE por defecto, deja de mostrar los mensajes cuando cambiamos a FALSE.warning: TRUE por defecto, deja de mostrar los avisos cuando cambiamos a FALSE.echo: TRUE por defecto, esconde el código cuando lo cambiamos a FALSE.eval: TRUE por defecto, no reproduce el resultado cuando lo cambiemos a FALSE.include: TRUE por defecto, lo esconde todo cuando lo cambiamos a FALSE.
Veamos ahora algunos ejemplos de cómo utilizar los chunks. El siguiente chunk, llamado nmc, está listo para mostrar el código de la siguiente manera:
- El código se mostrará en Html, porque por defecto en el chunk
setupestá indicadoecho = TRUE. - No reproducirá el resultado, porque hemos puesto explícitamente que
eval = FALSE.
| stateabb | ccode | year | milex | milper | irst | pec | tpop | upop | cinc |
|---|---|---|---|---|---|---|---|---|---|
| USA | 2 | 1816 | 3823 | 17 | 80 | 254 | 8659 | 101 | 0.0396975 |
| USA | 2 | 1817 | 2466 | 15 | 80 | 277 | 8899 | 106 | 0.0358166 |
| USA | 2 | 1818 | 1910 | 14 | 90 | 302 | 9139 | 112 | 0.0361265 |
| USA | 2 | 1819 | 2301 | 13 | 90 | 293 | 9379 | 118 | 0.0371332 |
| USA | 2 | 1820 | 1556 | 15 | 110 | 303 | 9618 | 124 | 0.0370869 |
| USA | 2 | 1821 | 1612 | 11 | 100 | 321 | 9939 | 130 | 0.0341731 |
| USA | 2 | 1822 | 1079 | 10 | 100 | 332 | 10268 | 136 | 0.0329391 |
| USA | 2 | 1823 | 1170 | 11 | 110 | 345 | 10596 | 143 | 0.0331075 |
| USA | 2 | 1824 | 1261 | 11 | 110 | 390 | 10924 | 151 | 0.0329776 |
| USA | 2 | 1825 | 1336 | 11 | 120 | 424 | 11252 | 158 | 0.0342150 |
| State | Year | Military Expenditure | CINC |
|---|---|---|---|
| USA | 1816 | 3823 | 0.0396975 |
| USA | 1817 | 2466 | 0.0358166 |
| USA | 1818 | 1910 | 0.0361265 |
| USA | 1819 | 2301 | 0.0371332 |
| USA | 1820 | 1556 | 0.0370869 |
| USA | 1821 | 1612 | 0.0341731 |
| USA | 1822 | 1079 | 0.0329391 |
| USA | 1823 | 1170 | 0.0331075 |
| USA | 1824 | 1261 | 0.0329776 |
| USA | 1825 | 1336 | 0.0342150 |
Ahora hacemos algunos cambios en el chunk anterior:
- Ponemos
eval = TRUE, por lo que nos reproducirá el código. - Podemos
echo = FALSE, por lo que nos esconderá el código. - Ponemos
message = FALSE, por lo que nos eliminará el mensaje que aparece. - El chunk debería quedar de la siguiente manera:
{r nmc, eval = TRUE, echo = FALSE, message = FALSE}.
3 Imágenes y gráficos
Los chunks también sirven para reproducir imágenes. Por eso ponemos dentro del chunk la función include_graphics() del paquete knitr.
- Realiza los cambios en el chunk para esconder código y reproducir el resultado.
Como en el chunk previo hemos creado el objeto nmc dentro del RMarkdown, en los siguientes chunks podremos utilizarlo para reproducir resultados. Por ejemplo, en el siguiente código reproduce una figura a partir del objeto nmc. Es muy importante que si no creamos el objeto previamente (en el mismo chunk o en un chunk anterior, Quarto no sabrá de qué objeto estamos hablando).