我一直在try RStudio的新的quarto工具,似乎无法完成在旧版本的R Notebook或R Markdown替代版本中可以做到的事情.
我想通过几个Quarto文档(.qmd)来组织我的工作流,并且我想生成.html文档,以便与非R用户共享.例如,假设我有以下4个文档:
- 01_DataProcessing.qmd
- 02_STATISTICALAnalysis.qmd
- 03_plots.qmd
- 04_Reports.qmd
在01_DataProcessing.qmd个中,我清理和组织要在其他三个文件中使用的所有数据.因此,其他三个文件依赖于01_DataProcessing.qmd个,*01_DataProcessing.qmd必须首先运行,这样其他文件才能运行.在RStudio中,这非常有效,因为所有.qmd文件都可以访问环境中的所有数据.
然而,当我想要生成.hmtl文件时,我必须"render"个.qmd文件.这就是我发现问题的地方.渲染似乎忽略了全局环境中的所有变量(以及所有已加载的库),因此显示AND ERROR(Execution halted).这意味着我只能使用包含所有代码的独立文档,这对于大型工作流来说可能是个问题.
我是不是遗漏了什么?我需要更改某些设置吗?有什么解决办法吗?如何指定.qmd使用全局环境中的所有可用数据?
请注意,将最新版本的RStudio更改为.rmd并不能解决问题,因为其行为与.qmd文档相同.另外,请不要说过go 不是这样的.
编辑
为了给出一个可重现的例子,假设在第一个qmd
个文件01_DataProcessing.qmd个中,我已经创建了一个数据帧TestData
,并且我想使用03_plots.qmd个文件中的TestData
01_DataProcessing.qmd个
---
title: "01_DataProcessing"
format: html
editor: visual
---
```{r}
library(tidyverse)
library(magrittr)
TestData <- data.frame(
x = c(1, 2, 3, 4, 5, 6, 7),
y = c(1 ,2 ,3, 4, 5, 6, 7))
```
03_plots.qmd个
---
title: "03_Plots"
format: html
editor: visual
---
If you try to render the file the execution is halted because the object TestData is not found.
```{r}
plot(TestData$x, TestData$y)
```