当我在RStudio中编织文档(通过单击" Knit")按钮时,将创建一个以文件名${filename}_cache
命名的缓存文件夹。
我希望能够检查编译创建的对象,并将它们放在我的工作区中。为此,我从控制台调用knit()
:
knit("filename.Rmd")
工作区现在包含所有对象,但这样做创建了一个名为cache/
的缓存。
我试图通过选项欺骗knitr使用相同的缓存名称:
opts_chunk$set(cache.path = "filename_cache/")
现在似乎使用了相同的缓存目录,但是从命令行调用knit()
似乎使单击" Knit"时创建的缓存无效。按钮。
例如,如果您有此文档,则保存为cache.Rmd
:
```{r}
library(knitr)
opts_chunk$set(cache.path = "cache_cache/")
```
```{r, cache=TRUE}
foo <- rnorm(10)
foo
```
如果使用&#34;编织&#34;编译它,您将得到不同的结果。按钮或从控制台。
是否有办法使用相同的缓存,独立于knit()
的调用方式?
答案 0 :(得分:1)
对于R Markdown文档,请勿拨打knitr::knit()
而是rmarkdown::render()
。 rmarkdown = knitr + Pandoc, rmarkdown 修改 knitr 中的几个默认块选项,包括{{1} } option(see source)。