在rmarkdown/knitr中创建带有R代码的附录
是否有可能在附录中获得所有代码。假设我在一个文档中有两个块,然后是一些文本在rmarkdown/knitr中创建带有R代码的附录,r,knitr,r-markdown,R,Knitr,R Markdown,是否有可能在附录中获得所有代码。假设我在一个文档中有两个块,然后是一些文本 ```{r, echo=TRUE} x <- 4+5 x ``` Above is X output. ```{r, echo=TRUE} y <- 22+325 y ``` Above is Y output. 预期产出: Chunk_1 x <- 4+5 x Chunk_2 y <- 22+325 y Chunk\u 1 xknitr::purl()可以将标记文
```{r, echo=TRUE}
x <- 4+5
x
```
Above is X output.
```{r, echo=TRUE}
y <- 22+325
y
```
Above is Y output.
预期产出:
Chunk_1
x <- 4+5
x
Chunk_2
y <- 22+325
y
Chunk\u 1
xknitr::purl()
可以将标记文件中的所有R代码提取到R脚本中。您可以将其添加为附录
## appendix
```{r code=readLines(knitr::purl('~/path/to/file.Rmd', documentation = 0)), eval = FALSE}
```
您可以使用对初始块的引用,但随后更改选项:
main text
```{r blah, echo = FALSE}
summary(cars)
```
appendix
```{r blah2, ref.label='blah', eval = FALSE}
```
这将提供:
另一种可能性:
### Appendix
```{r, ref.label=knitr::all_labels(),echo=TRUE,eval=FALSE}
```
正如所建议的,这真的很好。可以把这些块分开吗?或者给一个标题?现在,我必须在代码中使用#comments
。Setdocumentation=1
。然后,章节标题将作为注释添加。有关详细信息,请参见?purl
。最好的答案是不需要包含文件路径。我有时会/希望将某些功能的代码放在报告的附录中。我知道最初的问题是关于“所有”代码块的。最终,这个答案并不是提供“所有”块。这是一种直观的方式,可以将内容添加到Rmd文档的附录中,并允许编写周围的文本。其他答案显示了如何通过编程实现这一点。Yihui有一篇关于使用knitr::all_标签和子集或使用appendix=TRUE的文章。对于我未来的我:想想你想用附录中的代码做什么!这个可以带你走很远。
### Appendix
```{r, ref.label=knitr::all_labels(),echo=TRUE,eval=FALSE}
```