gpt4 book ai didi

r - 如何在 R Markdown 的 YAML 元数据中创建多级字典?

转载 作者:行者123 更新时间:2023-12-04 21:05:22 25 4
gpt4 key购买 nike

在使用单级列表/字典参数化 rmarkdown 时文件工作:

---
params:
first_level: ~
---

```{r}
params
```

并且 knitting 返回预期的
## $first_level
## NULL

我无法将多级列表/字典用作编织
---
params:
first_level:
second_level: ~
---

```{r}
params
```

生产 Error: no value field specified for YAML parameter 'first_level'
Execution halted
,我期望的地方
## $first_level
## $first_level$second_level
## NULL

真的只支持一个级别的列表还是我搞砸了什么?

正如我在下面评论的那样,可以使用来实现预期的输出
---
params:
first_level: !r list(second_level = NULL)
---

```{r}
params
```

但是为什么要使用 yaml然后完全代替参数化代码块?

最佳答案

params是 R Markdown 的一个特殊字段,您必须使用以下两种方式之一来指定参数的值:如果该值不是列表(例如,标量),则可以使用正常的 YAML 语法指定它;但是,如果它是一个列表,R Markdown 需要一个名为 value 的子字段,并且该值必须在此子字段中指定。在您的情况下,您必须使用 value字段,例如,

---
params:
first_level:
value:
second_level: ~
---

```{r}
params
```

目前是 by design .

关于r - 如何在 R Markdown 的 YAML 元数据中创建多级字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47284942/

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