Ricerca…


Tavoli da stampa

Esistono diversi pacchetti che consentono l'output di strutture di dati sotto forma di tabelle HTML o LaTeX. Per lo più si differenziano per la flessibilità.

Qui uso i pacchetti:

  • knitr
  • XTABLE
  • assecondare

Per documenti HTML

---
title: "Printing Tables"
author: "Martin Schmelzer"
date: "29 Juli 2016"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(knitr)
library(xtable)
library(pander)
df <- mtcars[1:4,1:4]
```

# Print tables using `kable`
```{r, 'kable'}
kable(df)
```

# Print tables using `xtable`
```{r, 'xtable', results='asis'}
print(xtable(df), type="html")
```

# Print tables using `pander`
```{r, 'pander'}
pander(df)
```

inserisci la descrizione dell'immagine qui

Per documenti PDF

---
title: "Printing Tables"
author: "Martin Schmelzer"
date: "29 Juli 2016"
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(knitr)
library(xtable)
library(pander)
df <- mtcars[1:4,1:4]
```

# Print tables using `kable`
```{r, 'kable'}
kable(df)
```

# Print tables using `xtable`
```{r, 'xtable', results='asis'}
print(xtable(df, caption="My Table"))
```

# Print tables using `pander`
```{r, 'pander'}
pander(df)
```

inserisci la descrizione dell'immagine qui

Come posso smettere di stampare xtable il commento prima di ogni tabella?

options(xtable.comment = FALSE)

Compresi i comandi del preamplificatore LaTeX

Ci sono due modi possibili per includere i comandi del preambolo LaTeX (ad esempio \usepackage ) in un documento RMarkdown.

1. Utilizzando l' header-includes dell'opzione YAML header-includes :

---
title: "Including LaTeX Preample Commands in RMarkdown"
header-includes: 
   - \renewcommand{\familydefault}{cmss}
   - \usepackage[cm, slantedGreek]{sfmath}
   - \usepackage[T1]{fontenc}
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE, external=T)
```

# Section 1

As you can see, this text uses the Computer Moden Font!

inserisci la descrizione dell'immagine qui

2. Inclusione di comandi esterni con includes , in_header

---
title: "Including LaTeX Preample Commands in RMarkdown"
output: 
  pdf_document:
    includes:
      in_header: includes.tex
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE, external=T)
```

# Section 1

As you can see, this text uses the Computer Modern Font!

Qui, il contenuto di includes.tex sono gli stessi tre comandi che abbiamo incluso con header-includes .

Scrivere un modello completamente nuovo

Una possibile terza opzione è scrivere il proprio modello LaTex e includerlo con il template . Ma questo copre molto di più della struttura rispetto al solo preambolo.

---
title: "My Template"
author: "Martin Schmelzer"
output:
  pdf_document:
    template: myTemplate.tex
---

Comprese le bibliografie

Un catalogo bibtex può essere facilmente incluso con la bibliography: dell'opzione YAML bibliography: Un certo stile per la bibliografia può essere aggiunto con lo biblio-style: I riferimenti sono aggiunti alla fine del documento.

---
title: "Including Bibliography"
author: "John Doe"
output: pdf_document
bibliography: references.bib
---

# Abstract

@R_Core_Team_2016

# References

inserisci la descrizione dell'immagine qui

Struttura del documento R-markdown di base

Pezzi con codice R markdown

R-markdown è un file markdown con blocchi incorporati di codice R chiamati chunks . Ci sono due tipi di blocchi di codice R: inline e block .

I blocchi in linea vengono aggiunti utilizzando la seguente sintassi:

`r 2*2`

Vengono valutati e inseriti la loro risposta di output in atto.

I blocchi Block hanno una sintassi diversa:

```{r name, echo=TRUE, include=TRUE, ...}

2*2

````

E vengono con diverse opzioni possibili. Ecco i principali (ma ce ne sono molti altri):

  • echo (booleano) controlla che il codice all'interno del blocco sia incluso nel documento
  • includere controlli (booleani) nel caso in cui l'output debba essere incluso nel documento
  • fig.width (numerico) imposta la larghezza delle figure di output
  • fig.height (numerico) imposta l'altezza delle figure in uscita
  • fig.cap (carattere) imposta le didascalie delle figure

Sono scritti in un semplice tag=value formato di tag=value come nell'esempio sopra.

Esempio di documento R-markdown

Di seguito è riportato un esempio di base del file R-markdown che illustra come i pezzi del codice R sono incorporati all'interno di r-markdown.

# Title #

This is **plain markdown** text.

```{r code, include=FALSE, echo=FALSE}

# Just declare variables

income <- 1000
taxes  <- 125

```

My income is: `r income ` dollars and I payed `r taxes ` dollars in taxes.

Below is the sum of money I will have left:

```{r gain, include=TRUE, echo=FALSE}

gain <- income-taxes

gain

```

```{r plotOutput, include=TRUE, echo=FALSE, fig.width=6, fig.height=6}

pie(c(income,taxes), label=c("income", "taxes"))

```

Conversione di markdown R in altri formati

Il pacchetto R knitr può essere usato per valutare i blocchi R all'interno del file R-markdown e trasformarlo in un normale file di markdown.

I seguenti passaggi sono necessari per trasformare il file R-markdown in pdf / html:

  1. Converti il ​​file R knitr file knitr usando knitr .
  2. Convertire il file markdown ottenuto in pdf / html utilizzando strumenti specializzati come pandoc .

Oltre al pacchetto knitr sopra, sono disponibili le funzioni wrapper knit2html() e knit2pdf() che possono essere utilizzate per produrre il documento finale senza il passaggio intermedio della conversione manuale nel formato markdown:

Se il suddetto file di esempio è stato salvato come income.Rmd può essere convertito in un file pdf utilizzando i seguenti comandi R:

library(knitr)
knit2pdf("income.Rmd", "income.pdf")

Il documento finale sarà simile a quello qui sotto.

pdfexample



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow