我使用rmarkdown::render()
函数对.Rmd文件列表生成报告,并且每个文件都有一个HTML文件。
这很好,直到我的数据集变大并且我的报告现在包含100多个数字... HTML文件通常最终超过100MB,而我现在有了一些很大的文件(〜500MB)。
.Rmd被分成几个块,因此人们可能会认为我必须将.Rmd拆分成较小的文件(假设每个文件一个块)。 这不是(轻松)可行的,因为.Rmd定义了一个数据处理工作流(chunk3中生成的数字需要在chunk1和chunk2中进行处理)。
我想知道是否可以将渲染自动分割为几个HTML文件。
理想情况下,我梦想着在render()
中使用一个'splitHeader'参数,该参数将为指定级别的每个标头生成单独的HTML文件。
我猜这是一个丑陋的解决方案,它是为我想呈现(或不呈现)的每个块/标题手动添加条件语句,然后使用不同的参数多次调用render()
。但这效率极低(而且丑陋,我已经说过了)...
有人会建议实现这一目标吗?
答案 0 :(得分:1)
我不确定是否可以解决此问题(或至少有助于解决问题):您可以根据需要将多个独立的.Rmd文件(子级)分割内容。在“母亲”文件中,您可以使用以下方式添加孩子:
```{r child = "yourChild.Rmd"}
```
子.Rmd文件不应包含任何头信息。也就是说,删除.Rmd中的前几行,如下所示:
---
title: "Your Title"
author: "Your name"
output: html_notebook
---