【问题标题】:Selectively knitting R notebook选择性编织R笔记本
【发布时间】:2019-09-19 16:49:24
【问题描述】:

我想制作长的、记录良好的 R-studio 笔记本来完整记录分析,但随后能够为不同的受众编写完整的笔记本或缩略版的报告。科学家的长版和执行摘要的短版。

我知道不运行单独的块,但是有没有办法指定块与支持文本的部分一起编织或不编织,然后以某种方式打开或关闭选择性编织?

This question 展示了如何使用 knit_exit() 提前退出编织,但我正在寻找一种通过文档多次进出的方法。

【问题讨论】:

  • stackoverflow.com/q/57436988 的可能重复项...请对其进行测试并报告,因为我认为它会满足您的需求。
  • 您可以编写一个脚本并将您的笔记本传递给rmarkdown::render,其中包含要编织的不同params。阅读?rmarkdown::render
  • 这些都很有帮助,但我认为这些建议中的任何一个都不允许您关闭 R 块之外的文本编织?这就是我特别感兴趣的。例如,我可能会讨论 R 代码块之前的数学公式(在 LaTeX 中),有时我可能想隐藏整个事情,数学讨论加上代码块。如果我错了,请告诉我,我会更仔细地调查这些来源。

标签: r rstudio knitr


【解决方案1】:

你可以试试下面的代码:

---
title: study sample
output: pdf_document
---

```{r beginning, echo = FALSE, include = FALSE}
echoaudience <- c("scientific", "executive")
```

```{r data1, echo = any(c("scientific","tested") %in% echoaudience)}
# a detailed report
```

```{r data2, echo = any(c("executive","brief") %in% echoaudience)}
# a brief summary
```

```{r data3, echo = any(c("myleftover","brief") %in% echoaudience)}
# some data only in my interest
```

它将仅返回您要显示的代码,在本例中为 data1 和 data2。您可以控制输出。

```r
# a quite detailed info
```

```r
# a brief summary
```

希望对你有帮助。

问候,

亚历克西斯

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-08
    • 1970-01-01
    • 2020-11-29
    • 1970-01-01
    • 2019-12-30
    • 2017-06-13
    相关资源
    最近更新 更多