在Rmarkdown中隐藏R代码的一部分

在Rmarkdown中隐藏R代码的一部分,r,knitr,r-markdown,R,Knitr,R Markdown,如何在Rmarkdown中省略块的一部分 例如: ```{r echo T, eval = T} df <- readRDS("yourfile.RDS") df <- readRDS("secretfile.RDS") ### NEED TO OMIT THIS PART ONLY df ``` 但这是一种笨拙的方法,它会切碎代码块。输出应该如下所示: df <- readRDS("yourfile.RDS") df df您可以隐藏代码,但将其放在未计算的代码块上方。然后

如何在Rmarkdown中省略块的一部分

例如:

```{r echo T, eval = T}
df <- readRDS("yourfile.RDS")
df <- readRDS("secretfile.RDS") ### NEED TO OMIT THIS PART ONLY
df
```
但这是一种笨拙的方法,它会切碎代码块。输出应该如下所示:

df <- readRDS("yourfile.RDS")
df

df您可以隐藏代码,但将其放在未计算的代码块上方。然后在未计算的代码块(显示)之后,您可以创建另一个已计算但隐藏的代码块来返回df

例如:

```{r echo = F, eval = T}
df <- readRDS("secretfile.RDS") ### NEED TO OMIT THIS PART ONLY
```
```{r echo = T, eval = F}
df <- readRDS("yourfile.RDS")
df
```
```{r echo = F, eval = T}
df
```
`{r echo=F,eval=T}

dfecho
参数可以采用数字,而不仅仅是
TRUE
FALSE
。它们被视为块中表达式向量的索引

因此,要隐藏第二行代码,请使用
echo=-2

eval
参数也接受索引,但如果您将其设置为不进行评估,它将显示带有注释标记的内容,因此您不能(轻松地)显示第1行,而是执行第2行。您可以这样做:

```{r eval=-1, echo=-2}
a <- 1
b <- 2
c <- 3
```
`{r eval=-1,echo=-2}

a如果您不使用“yourfile.RDS”来评估代码,为什么不将经过评估的机密代码放在顶部?这样就不会弄乱格式。嗨,我需要省略
readRDS(“secretfile.RDS”)
。由于隐私原因,它有一些参数不应显示在文档上。其思想是展示如何使用相同名称
df
对数据执行此过程。这就是为什么我以前不能读取文件的原因(`
{r include=F}是的,我的意思是你可以隐藏代码,但是把它放在未赋值的代码块之上。然后在未赋值的代码块之后(显示),您可以创建另一个已计算但隐藏的代码块来返回您的df。谢谢,这很有效!很高兴能提供帮助,我将其添加为答案。谢谢@user2554330。我不知道
echo
eval
参数的索引。但是,我无法应用您的解决方案,因为
yourfile.RDS
不存在,这会引发错误,但我的问题不清楚,所以我也会检查您的评论。在这种情况下,使用评论标记显示可能是合适的。
```{r echo = T, eval = F}
df <- readRDS("yourfile.RDS")
df
```
```{r echo = F, eval = T}
df <- readRDS("secretfile.RDS") ### NEED TO OMIT THIS PART ONLY
df
```
```{r eval=-1, echo=-2}
a <- 1
b <- 2
c <- 3
```
## a <- 1
c <- 3