16
votes

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
3

3 Answers

22
votes

Another possibility:

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

as suggested by Yihui's nice example

15
votes

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}

```
10
votes

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