gpt4 book ai didi

rstudio - 在 yml 文件中为 Quarto 指定参数

转载 作者:行者123 更新时间:2023-12-05 03:21:26 27 4
gpt4 key购买 nike

我正在 RStudio 中创建一个四开本项目来呈现一个 html 文档。我需要在 yml 文件中指定一些参数,但 qmd 文件返回“未找到对象‘params’”。使用 knitR。

我使用默认的 yml 文件,我在 book 标签下添加了参数

project:
type: book

book:
title: "Params_TEst"
author: "Jane Doe"
date: "15/07/2022"
params:
pcn: 0.1
chapters:
- index.qmd
- intro.qmd
- summary.qmd
- references.qmd

bibliography: references.bib

format:
html:
theme: cosmo
pdf:
documentclass: scrreprt

editor: visual

qmd 文件看起来像这样

# Preface {.unnumbered}

This is a Quarto book.

To learn more about Quarto books visit <https://quarto.org/docs/books>.

```{r}
1 + 1
params$pcn

当我渲染这本书,或者在 Rstudio 中预览这本书时,我收到的错误是:

Quitting from lines 8-10 (index.qmd)Error in eval(expr, envir, enclos) : object 'params' not foundCalls: .main ... withVisible -> eval_with_user_handlers -> eval -> eval

我已经尝试将 params 行放在不同位置的 yml 中,但到目前为止没有任何效果。

有人能帮忙吗?

最佳答案

对于多页呈现,例如四开本,您需要将 YAML 添加到每一页,不在 _quarto.yml 文件中

因此在您的情况下,每个调用参数的章节都需要一个 YAML header ,例如 index.qmd、intro.qmd 和 summary.qmd,但可能不需要 references.qmd。

YAML header 应该看起来就像在标准 Rmd 中一样。因此,例如,您的 index.qmd 将如下所示:

---
params:
pcn: 0.1
---

# Preface {.unnumbered}

This is a Quarto book.

To learn more about Quarto books visit <https://quarto.org/docs/books>.

```{r}
1 + 1
params$pcn

但是,如果您需要更改参数并重新渲染怎么办?然后简单地将新参数传递给 quarto_render 函数

quarto::quarto_render(input = here::here("quarto"), #expecting a dir to render
output_format = "html", #output dir is set in _quarto.yml
cache_refresh = TRUE,
execute_params = list(pcn = 0.2))

关于rstudio - 在 yml 文件中为 Quarto 指定参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72992071/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com