RMarkdown
Markdown
Markdown è un linguaggio di markup con una sintassi del testo semplice progettata in modo che possa essere convertita in HTML e in molti altri formati usando degli appropriati strumenti (ad esempio pandoc).
Esempio di codice markdown
# Titolo di primo livello
Testo normale con un [link](http://example.com)
## Titolo di secondo livello
Testo con *corsivo*, **grassetto**, `monospace`
> questa è una citazione
![immagine](https://via.placeholder.com/150)
* una lista
* di punti
* indentata
* non ordinata
1. una lista
2. numerata
2.1. indentata
2.2. con una propria numerazione
3. di punti
Una nota [^nota1] a pie di pagina
[^nota1]: il testo della nota
Omettendo i titoli di primo e secondo livello, il codice precedente produce la seguente formattazione:
Testo normale con un link
Testo con corsivo, grassetto, monospace
questa è una citazione
- una lista
- di punti
- indentata
- non ordinata
- una lista
- numerata
- indentata
- con una propria numerazione
- di punti
Una nota [^nota1] a pie di pagina
Per una guida dettagliata della versione di markdown utilizzata da Pandoc via RStudio, si veda Pandoc Markdown
Una citazione bibliografica: @KeselmanWilcoxOthmanFradette:2002
Rmarkdown
RMarkdown si basa sull'idea di literate programming: integrare in uno stesso documento codice eseguibile e testo.
RMarkdown utilizza knitr
per processare la parte di codice, creare l'output (compresi i grafici) ed includerli in un file markdown dinamicamente generato. Questo file viene poi trasformato in un documento (ad esempio html, pdf o word) utilizzando il programma Pandoc
. Pandoc è uno strumento estremamente potente, capace di trasformare documenti di numerosi formati.
Il documento che stai leggendo è stato creato in RMarkdown.
Per usare RMarkdown è necessario installare la corrispondente libreria.
install.packages("rmarkdown")
install.packages("knitr")
Anatomia di RMarkdown
La prima parte di un documento RMarkdown (opzionale, ma estremamente utile) è una sezione YAML che descrive i metadati del documento: titolo, autore, data di creazione, abstract.
Il resto del documento integra delle parti testuali, scritte in Markdown, con dei chunk
di codice R
. In realtà RMarkdown supporta altri linguaggi, oltre ad R (ad esempio python).
title: "r markdown"
author: "Stefano Bussolon"
date: "febbraio 2019"
output: html_document
I chunk
Un chunk è un pezzo di codice che inizia con \
``e termina con
````
Ad esempio, il codice
```r
vettore1 <- c(2,4,6,8,10,12)
# seleziona il quinto elemento
vettore1[5]
# moltiplica il vettore
vettore1*3
```
genera il seguente risultato:
vettore1 <- c(2,4,6,8,10,12)
# seleziona il quinto elemento
vettore1[5]
## [1] 10
# moltiplica il vettore
vettore1*3
## [1] 6 12 18 24 30 36
Posso mostrare nel testo il valore della variabile con la sintassi:.
`r variabile`
Ad esempio: il valore di vettore1[3]
è 6.
I file Rmarkdown di questo corso
Il modo forse più efficace per farsi un'idea di come funziona Rmarkdown è quello di scaricare, far girare e modificare i file usati per generare le slide di questo corso, che sono pubblicate in Materiale
Risorse
[^nota1]: il testo della nota