Developer
Developer

Reputation: 976

Create appendix with R-code in rmarkdown/knitr

Is it possible to get all of the code in a appendix. Say I have two chunks in a document and then some text.

```{r, echo=TRUE}
x <- 4+5
x
```  
Above is X output.

```{r, echo=TRUE}
y <- 22+325
y
```   

Above is Y output.

And then I want all of the code in a appendix but shown as if I put eval=FALSE in the chunk.

Something like this

```{r, SHOW_ALL_CODE=TRUE}
```

Expected output:

Chunk_1
x <- 4+5  
x

Chunk_2  
y <- 22+325  
y

Upvotes: 20

Views: 20970

Answers (3)

Will Townes
Will Townes

Reputation: 1837

Another possibility:

### Appendix 
```{r, ref.label=knitr::all_labels(),echo=TRUE,eval=FALSE}
```

as suggested by Yihui's nice example

Upvotes: 24

Thierry
Thierry

Reputation: 18487

knitr::purl() can extract all R code from a markdown file into an R script. You can add that as an appendix.

## appendix

```{r code=readLines(knitr::purl('~/path/to/file.Rmd', documentation = 0)), eval = FALSE}

```

Upvotes: 15

jeremycg
jeremycg

Reputation: 24945

You could use a reference to your initial chunks, but then change the options:

main text

```{r blah, echo = FALSE}
summary(cars)
```

appendix

```{r blah2, ref.label='blah', eval = FALSE}
```

Which will give:

enter image description here

Upvotes: 10

Related Questions