我想创建一个Rmarkdown文档(pdf或html),它有条件地"执行"了一些块.我想到的具体情况是,我可能想要一个更详细和文档化的输出版本供同事进行内部审查,并为外部消费者提供更短版本.我可能不想或不需要向客户端显示数据操作步骤,而只需要关键的图形和表格.我也不想制作两个单独的文件或者必须手动指出要显示的内容.
有没有办法在Rmd的开头设置一个开关,表示例如,verbose = T将运行所有块或verbose = F切换echo = F(或include = F)?
谢谢.
knitr选项可以表示为R表达式.根据knitr网页上的"输出"文档:
请注意,knitr中的所有选项都可以从R表达式中获取值,这会带来主要手册中引入的条件评估功能.简而言之,
eval=dothis
意味着eval的实际价值取自dothis
全球环境中命名的变量; 通过操纵这个变量,我们可以打开/关闭一批块的评估.
换句话说,如果你写一些块,如:
```{r label} doNextChunk <- as.logical(rbinom(1,1,.5)) ``` ```{r conditional, eval = doNextChunk} "hello world!" ```