我正在使用sweave
包根据我的R代码制作报告。但是,由于某些代码块需要花费太多时间来处理,因此我计划使用cacheSweave包来避免此问题。
在cacheSweave
's vignette中,它说我需要指定一个驱动程序
Sweave("foo.Rnw", driver = cacheSweaveDriver)
但是,我想继续使用RStudio中的“ Compile PDF ”按钮,以便它自动运行Sweave
命令和pdflatex
。
如何在调用Sweave
函数时告诉RStudio使用该特定驱动程序?
预期的结果是,当我处理以下“ .Rnw ”代码两次时(示例基于从cacheSweave
的插图中获取的代码),第二次将更快因为数据是缓存的。
\documentclass{article}
\begin{document}
\SweaveOpts{concordance=TRUE}
<cache=TRUE>>=
set.seed(1)
x <- local({
Sys.sleep(10)
rnorm(100)
})
results <- mean(x)
@
\end{document}
Sweave
函数帮助说*环境变量SWEAVE_OPTIONS可用于覆盖驱动程序*设置的初始选项。所以我在RStudio控制台中尝试了以下命令,
Sys.setenv(SWEAVE_OPTIONS="driver=cacheSweaveDriver")
然后“再编译PDF”两次,但没有成功。
答案 0 :(得分:1)
解决方案:
在此"ghost" blog中发布,我在工作目录中创建了一个名为 .Rprofile 的文件,其中包含以下内容:
library(utils)
library(cacheSweave)
assignInNamespace("RweaveLatex", cacheSweave::cacheSweaveDriver, "utils")