使用rmarkdown / knitr保存所有代码直到结束

时间:2015-02-11 15:40:38

标签: r knitr r-markdown reproducible-research

我希望能够使用knitr / rmarkdown生成一个文档,将所有输出保存在一起,但将代码保留到最后,理想情况下作为引用的脚注(即每个数字的代码或可以使用脚注在附录中查找输出。这可能吗?

2 个答案:

答案 0 :(得分:7)

如果我理解你的意思。 您可以向原始代码块添加标签,然后使用ref.label属性引用它,并阻止其使用eval=FALSE进一步执行。

例如:

 # Header
 Bla bla ...
 ````{r plot1,echo=FALSE}
 x = rnorm(100,10,5)
 y = rnorm(100,10,5)
 plot(x,y)
 ````

 # Appendix

 Code chunk:
 ````{r ref.label="plot1",eval=FALSE}
 ```

执行第一个块(没有回声)并显示一个数字,第二个块只是回显第一个块的源。

答案 1 :(得分:3)

一种解决方案是在最后添加此块。

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

然后,您将所有代码一起进行评估。