假设我在Rnw
文件code_block_1
和code_block_2
中包含两个代码块。假设我对code_block_1
进行了更改,但code_block_2
保持不变。
我正在使用knitr
将Rnw
文件转换为tex
文件。由于code_block_2
保持不变,我可以knitr
仅评估并运行code_block_1
吗?
答案 0 :(得分:4)
首先在此处查看knitr
个选项:http://yihui.name/knitr/options/。我认为您正在寻找的是cache
选项。试试这个小例子,注意只有你实际改变代码的块的时间从一次运行变为另一次运行:
首先运行:
\documentclass{article}
\begin{document}
<<code_block_1, cache=TRUE>>=
set.seed(123)
x <- rnorm(10)
summary(x)
Sys.time()
@
<<code_block_2, cache=TRUE>>=
set.seed(123)
y <- rnorm(10)
summary(y)
Sys.time()
@
\end{document}
输出:
第二次运行(在第二个块中添加注释后):
\documentclass{article}
\begin{document}
<<code_block_1, cache=TRUE>>=
set.seed(123)
x <- rnorm(10)
summary(x)
Sys.time()
@
<<code_block_2, cache=TRUE>>=
# Just added a comment in this chunk
set.seed(123)
y <- rnorm(10)
summary(y)
Sys.time()
@
\end{document}
输出: