# Markdown
Markdown: formato md. Ottimo per la documentazione, adatto a essere usato con qualsiasi editor di testo, default per documentazione GitHub, ci sono convertitori Markdown-html per poterlo usare per pagine web.
## Sintassi
### Titoli
Singolo cancelletto per titolo principale, doppio per titolo secondario, triplo per terzo.
### New line
Per andare a capo è necessario un doppio spazio al termine della riga.
### Testo
Testo normale
*Testo corsivo*
**Testo grassetto**
`monospace` (riquadrato tipo tag code in HTML)
### Liste
Lista non ordinata:
- primo elemento
- secondo elemento
- terzo elemento
Lista ordinata:
1. primo elemento
2. secondo elemento
3. terzo elemento (nel file MD appaiono ordinate per numero anche se non lo sono nel testo base)
### Link
Sintassi base:
[Sito internet](http://massyfigini.github.io/) e [blog](http://giovanestatistico.blogspot.it/)
Sintassi alternativa più ordinata:
[Sito internet][1] e [blog][2]
[1]: http://massyfigini.github.io/
[2]: http://giovanestatistico.blogspot.it/
# R Markdown
R Markdown: formato Rmd. Markdown combinato con codice R: perfetto per presentazioni in cui il testo è combinato con codice e risultati delle analisi pubblicabili facilmente anche su web.
Il pacchetto knitr converte il codice Rmd in md e quindi in html (o anche in doc o pdf).
Con RStudio può essere facilmente usato tramite il suo editor di testo (File -> New File -> R Markdown): una volta scritto il documento click su "knit HTML".
*VANTAGGI:*
- testo e codice nello stesso file, ordinati logicamente.
- analisi sempre aggiornate se cambia qualcosa
*SVANTAGGI:*
- se l'analisi è complessa avere tutto nello stesso file può essere difficile da leggere e lento (deve rifare ogni volta tutta l'analisi).
- Il design non è personalizzabile.
## Sintassi
### Codice R
Per inserire codice R si antepone ```{r} e si pospone ```, si otterrà sia il codice che il risultato
```{r}
set.seed(1)
x <- rnorm(100)
mean(x)
```
Si può dare un nome al codice
```{r nomecodice}
set.seed(1)
y <- sample(-10:10, size=100, replace=TRUE)
mean(y)
```
Si può decidere di nascondere il codice e mostrare solo il risultato con echo=FALSE
```{r risultato, echo=FALSE}
set.seed(1)
x <- rnorm(100)
mean(x)
```
Viceversa se si vuole solo il codice senza il risultato si usa results="hide"
```{r codice, results="hide"}
set.seed(1)
x <- rnorm(100)
mean(x)
```
E' possibile visualizzare i risultati all'interno di stringhe in questo modo:
```{r stringhe, echo=FALSE}
time <- Sys.time()
```
Data e ora attuali: `r time`
Anche i grafici sono incorporati: con fig.height e fig.width è possibile modificare le dimensioni
```{r grafico, fig.eight=4}
par(mar = c(5,4,1,1), las = 1)
plot(x, y, main = "Dati simulazione")
```
Per le tabelle si può utilizzare la libreria xtable (necessario results="asis" altrimenti la vedo in codice html):
```{r tabella, results = "asis"}
# prima creo i dati
library(datasets)
data(airquality)
fit <- lm(Ozone ~ Wind + Temp + Solar.R, data = airquality)
# ora printo la tabella
library(xtable)
xt <- xtable(summary(fit))
print(xt, type = "html")
```
Altra ottima libreria per le tabelle è la pander (sempre con asis)
```{r tabella2, results = "asis"}
library(datasets) # per i dati
# tabella
library(pander)
pandoc.table(ToothGrowth)
```
Per cambiare i margini dell'output a 2 cm, aggiungere geometry: margin=2cm nell'intestazione iniziale.
Altre opzioni nell'intestazione tra graffe del codice:
- cache=TRUE per salvare nella cache il risultato di ogni step di codice: in questo modo viene eseguito solo la prima volta e quelle successive viene caricato dalla cache.
- fig.eight=4, fig.width=8 per forzare altezza e larghezza del grafico risultante dal codice
- message=FALSE e warning=FALSE per evitare di vedere messaggi di warning di R (in particolare al caricamento dei pacchetti).
- è possibile cambiare le opzioni di default mettendo un codice R iniziale contenente la funzione opts_chunk$set(), ad esempio opts_chunk$set(echo=FALSE, results="hide") per avere di default sia codice (echo) che risultati (results) nascosti
### New page
Comando per andare in una nuova pagina (utile ad esempio per pubblicazione in pdf):
/newpage
### Sintassi iniziale se non si usa R Studio
library(knitr)
knit2html("document.Rmd")
browseURL("document.html")
Categories
Bash
(3)
BOT
(2)
C#
(1)
Cluster Analysis
(1)
Data Cleaning
(6)
Data Ingestion
(2)
Data Science Specialization
(10)
Data Visualization
(15)
ggplot2
(1)
Hadoop
(1)
Hashnode
(3)
Machine Learning
(5)
MapReduce
(1)
Maps
(1)
Markdown
(7)
Market Basket Analysis
(1)
MATLAB
(1)
Matplotlib
(3)
Numpy
(2)
Octave
(1)
Pandas
(3)
Python
(17)
R
(22)
Regression
(7)
scikit-learn
(1)
Seaborn
(1)
Shell
(3)
Shiny App
(1)
SSIS
(3)
Statistical Inference
(2)
T-SQL
(8)
Unix
(3)
No comments:
Post a Comment