RMarkdown 使用注释使部分可选
Posted
技术标签:
【中文标题】RMarkdown 使用注释使部分可选【英文标题】:RMarkdown Using comments to make sections optional 【发布时间】:2022-01-23 04:12:42 【问题描述】:是否可以在 RMarkdown 中以编程方式注释掉整个部分。例如,假设我有一部分报告:
### 2.1. Heading
Blah blah blah my description, with `r variables` and other stuff.
#### Table 2.1.1. Sub heading
```r table_2_1_1
kable_2_1_1
```
现在基于代码中的布尔值,我想完全注释掉整个部分。我尝试将 r 变量放入报告中,例如“”,但这不起作用。
【问题讨论】:
那么,您是说如果您在第 1 节块中将 0 返回给给定变量,那么理想情况下您希望注释掉第 2 节? 这可能有用:Conditionally display block of markdown text using knitr. 【参考方案1】:您可以将布尔值传递给 rmd 块中的 eval
以有条件地编织不同的 rmarkdown 代码块:
---
title: "Untitled"
author: "Matt"
date: "12/21/2021"
output: html_document
---
```r setup, include=FALSE
library(knitr)
knitr::opts_chunk$set(echo = TRUE)
should_i_evaluate <- F
```
```r header, eval = should_i_evaluate
asis_output("# My Header")
```
```asis, echo = should_i_evaluate
Blah blah blah my description, with `r names(mtcars[1:3])` and other stuff.
```
```r cars, eval = should_i_evaluate
summary(mtcars)
```
当should_i_evaluate
是TRUE
:
当should_i_evaluate
是FALSE
:
【讨论】:
不错。那是一半。如果还有其他部分,是否也可以删除文本。例如,等等等等。 这只是通用的yaml
,它是我默认设置的一部分——我相信你的看起来会有所不同。在我回答的最上面,您可以看到title: "Untitled"
和author: "Matt"
。如果您希望它为空白,或者您想要的任何其他文本,您只需将它们编辑为 ""
。
抱歉,我意识到这一点并迅速编辑了我的评论。
不用担心 - 我更新了解决方案,您可以做几乎相同的事情,但将文本包含在 asis
块中,并将您的布尔值提供给 echo
而不是 eval
是的!再次更新 - 您需要包含 library(knitr)
并使用 asis_output()
添加一个 R
块以上是关于RMarkdown 使用注释使部分可选的主要内容,如果未能解决你的问题,请参考以下文章
在 Rmarkdown html 文档中并排时使图形大小(宽度和高度)相同