如何在Quarto文档中提前引用后续计算的衍生值?
解决Quarto文档提前引用后续代码变量的问题
要在Quarto文档的前置章节(比如执行摘要)引用后面代码块里的变量,核心是让变量定义的代码优先于引用执行,具体可以这么操作:
- 用setup前置代码块提前定义变量:在YAML配置之后,添加一个带
setup标签的R代码块,设置include=FALSE,这样代码不会显示在最终文档里,但会最先执行完成变量定义。 - 完成前置定义后,不管是前面的执行摘要还是后面的章节,都能直接用
${r} 变量名``的格式引用变量值。
修改后的完整示例代码
--- title: "Quarto结果引用示例" format: html --- ```{r setup, include=FALSE} # 提前定义变量,此代码块不会出现在最终文档中 revenue <- 100 # 美元 expenses <- 80 # 美元 profit <- revenue - expenses
执行摘要
- 业务表现出色
- 利润为 $
{r} profit
方法说明
计算利润的公式:
# 可选:在方法章节展示计算过程(也可以只保留setup块,这里不重复写) revenue <- 100 expenses <- 80 profit <- revenue - expenses
今年我们的利润为 ${r} profit
如果不需要在方法章节重复展示代码,只保留setup块即可,执行摘要里的数值会自动同步代码计算出的`profit`结果,彻底告别硬编码。 内容的提问来源于stack exchange,提问作者Michael Bird
相关产品推荐
相关产品推荐

