考虑以下test.Rmd
:
```{r setup, purl=FALSE}
opts_chunk$set(purl=FALSE)
opts_template$set(nopurl = list(purl=FALSE))
```
```{r test1}
print(1)
```
```{r test2, opts.label='nopurl'}
print(2)
```
```{r test3, purl=FALSE}
print(3)
```
purl('test.Rmd')
给出 test.R
,其中没有一个 test* block 应该被 purled,但是:
## ----test1---------------------------------------------------------------
print(1)
## ----test2, opts.label='nopurl'------------------------------------------
print(2)
尽管有全局选项 opts_chunk$set(purl=FALSE)
和标签 nopurl
,但只有 test3
没有被 purled,其余的都被 purled >.
为什么?
最佳答案
这不是一个错误,只是purl()
没有执行任何代码块,因此第一个代码块没有真正执行。 purl()
函数在很多方面都不可靠,请参阅 ?knitr::hook_purl
。也就是说,我根本不建议 Purling 文档;编织更可靠(请参阅?knitr::purl
中的注释部分)。
关于r - Knit:不要取一大块金银丝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27462018/