首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >‘`bookdown`’/‘`rmarkdown`’/‘编织品’:非代码顺序处理方法?

‘`bookdown`’/‘`rmarkdown`’/‘编织品’:非代码顺序处理方法?
EN

Stack Overflow用户
提问于 2018-07-17 17:22:21
回答 1查看 79关注 0票数 2

以编程方式,我的bookdown项目进行如下:

  1. 读取原始数据-产生各种统计数据。
  2. 数据预处理(对数化、归一化、归一化)--产生各种地块,以监测所发生的人口层次缺陷.
  3. PCA用于分析QC -为PCA和负载绘制地块.主要数据点.
  4. 差异表达分析-产生火山图样和图形特征突出的差异表达的特点。
  5. 在各种生物本体系统中,对差异表达特征的过度表示分析--为丰富的类别生成示例条形图。

我使用bookdown很好地集成了分析和叙述,能够高效地丢弃临时(相当大的)数据集/ggplot2对象(转换前后的数据等等)。

然而:目标观众大多/只对4. & 5.感兴趣,这将我引向以下结构:

4. 5.附录(1.、2.、3.)

除了预计算1.-5之外,还有其他方法吗?然后按照目标顺序重新访问--如果可能的话,我更希望避免在内存中积累所有的ggplot2对象。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-19 06:09:43

你可以这样做:

  1. 将步骤1-3和4-5拆分为两个特定的*.Rmd文件,比如123.Rmd45.Rmd
  2. 将代码块添加到45.md的开头,该代码块将123.Rmd连接到123.md

```{r knit123, include = FALSE} knitr::knit("123.Rmd", output = "123.md") ```

这将在Markdown中生成步骤1-3的输出,并将由此创建的所有对象都提供给步骤4-5。

  1. 45.Rmd的末尾添加一个代码块,该代码块读取123.md打印其内容:

```{r include123, results = "asis"} cat(readLines("123.md"), sep = "\n") ```

results = "asis"将阻止任何进一步的处理,因为它已经是有效的标记。

  1. 45.Rmd编织成您想要的任何目标格式。

编辑(1)

TL;DR:不是在整个步骤4-5中将步骤1-3中的对象存储在内存中,而是先打印它们并将结果存储在磁盘上。

编辑(2):

既然您已经明确地提到了预订:如果有一个YAML选项在编织过程结束时包含一个Markdown文件(类似于include-after: 123.md),我不会感到惊讶;但是我不知道从头顶开始是否确定,我懒得自己去查找它。;-)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51387098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档