rmarkdown 文件工作:
rmarkdown
--- params: first_level: ~ --- ```{r} params ```
并且针织返回预期
## $first_level ## NULL
我无法将多级列表/字典用作编织
--- params: first_level: second_level: ~ --- ```{r} params ```
生产 Error: no value field specified for YAML parameter 'first_level' Execution halted ,我期待的地方
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 那么,是否要取代参数化代码块?
yaml
params 是R标记的特殊字段,必须使用以下两种方法之一指定参数的值:如果值不是列表(例如标量),则可以使用正常的YAML语法指定它;但是,如果是列表,R Markdown需要一个子字段,名为 value ,并且必须在此子字段中指定该值。在您的情况下,您必须使用 价值 字段,例如。,
params
value
价值
--- params: first_level: value: second_level: ~ --- ```{r} params ```
这是目前 by design .