【问题标题】:RMarkdown error in YAMLYAML 中的 RMarkdown 错误
【发布时间】:2014-10-12 11:55:49
【问题描述】:

前几天我观看了 RStudio 举办的关于 RMarkdown 的精彩网络研讨会。网络研讨会结束后,他们在线发布了演示中使用的代码,我想查看一个示例。我拿了their code,把它放在我的 RStudio(上面说它是完全最新的,v0.98.978),安装或更新了所有必要的包,然后点击“运行文档”

我收到了一个我不理解的错误,Google 对此毫无帮助。这个神秘的 是什么?如何包含它?我假设所有必要的组件都将包含在代码的来源中。

Error in yaml::yaml.load(front_matter) : 
  Parser error: did not find expected <document start> at line 2, column 1
Calls: <Anonymous> -> parse_yaml_front_matter -> <Anonymous> -> .Call
Execution halted

【问题讨论】:

    标签: yaml rstudio r-markdown


    【解决方案1】:

    问题来自将代码从浏览器复制到 Rstudio。

    原来的头信息是:

    ---
    title: "Linked brushing"
    output: html_document
    runtime: shiny
    ---
    

    粘贴的文本是:

    ---
      title: "Linked brushing"
    output: html_document
    runtime: shiny
    ---
    

    缺少的 是标题的每个元素之前的不相等数量的空白。这可以通过在“输出”和“运行时”行中添加空格或删除“标题”行的空格来解决。

    【讨论】:

    【解决方案2】:

    此错误消息的另一个常见原因是使用制表符而不是空格来缩进您的 YAML 代码。您只能使用 SPACES 来缩进 YAML,而不是 TABS。我写这篇文章是为了让我未来的自己在这里找到。

    title: "Initial Results"
    output: 
      pdf_document:
        toc: true
    

    【讨论】:

      【解决方案3】:

      情况并非如此,但在使用pkgdown::build_site 或更恶毒的pkgdown::build_article 时可能会出现相同类型的错误。当使用后者为包构建特定的小插图时,我注意到在内部解析了所有小插图的标题。因此,即使您正在构建的特定小插图是正确的,在没有指定哪个文件的标头已损坏的情况下也会发生错误。因此,当问题出在另一个文件中时,您可能会发现自己很难调试实际上正确的标头。

      【讨论】:

        【解决方案4】:

        就我而言,我需要在 YAML 标头顶部的三个破折号后添加一个空格:

        ---[此处为一个空格-不带方括号]
        标题:“链接刷”
        输出:html_document
        运行时:闪亮


        【讨论】:

          猜你喜欢
          • 2017-12-07
          • 1970-01-01
          • 2019-03-07
          • 2014-06-20
          • 2016-10-27
          • 1970-01-01
          • 1970-01-01
          • 2014-11-05
          • 1970-01-01
          相关资源
          最近更新 更多