parse_block(g [-1],g [1],params.src)中出错:重复标签'unnamed-chunk-1

时间:2019-02-06 13:54:25

标签: r r-markdown knitr flexdashboard

此错误有些奇怪。有时,带有r个块的同一个rmd文件可以正常运行,并且knitr在“ unnamed-chunk-”之后分配顺序号,但有时knitr报告错误。

我找不到任何方法来确定该过程在什么情况下可以顺利运行以及何时产生错误。 rmd文件中的所有r个块都没有名称/标签。

下面是命令日志,以防一切顺利,并且未标记的块被赋予顺序编号

outfile = c(outfile, knit("File1.rmd"))    
processing file: File1.Rmd

  |.....                                                            |   8%
  ordinary text without R code

  |...........                                                      |  17%
label: unnamed-chunk-1 (with options) 
List of 1
 $ echo: logi FALSE

  |................                                                 |  25%
   inline R code fragments

  |......................                                           |  33%
label: unnamed-chunk-2 (with options) 
List of 4
 $ echo      : logi FALSE
 $ connection: symbol db.conn
 $ output.var: chr "db.data"
 $ engine    : chr "sql"

  |...........................                                      |  42%
  ordinary text without R code

  |................................                                 |  50%
label: unnamed-chunk-3 (with options) 
List of 1
 $ echo: logi FALSE

  |......................................                           |  58%
  ordinary text without R code

  |...........................................                      |  67%
label: unnamed-chunk-4 (with options) 
List of 1
 $ echo: logi FALSE

  |.................................................                |  75%
  ordinary text without R code

  |......................................................           |  83%
label: unnamed-chunk-5 (with options) 
List of 1
 $ echo: logi FALSE

  |............................................................     |  92%
  ordinary text without R code

  |.................................................................| 100%
label: unnamed-chunk-6 (with options) 
List of 1
 $ echo: logi FALSE


output file: Test_DSN-ARAMIS-01.md

> outfile = c(outfile, knit_child("File2.Rmd"))


processing file: File2.Rmd
  |.............                                                                                                                                          |   8%
  ordinary text without R code

  |.........................                                                                                                                              |  17%
label: unnamed-chunk-1 (with options) 
List of 1
 $ echo: logi FALSE

  |......................................                                                                                                                 |  25%
   inline R code fragments

  |..................................................                                                                                                     |  33%
label: unnamed-chunk-2 (with options) 
List of 4
 $ echo      : logi FALSE
 $ connection: symbol db.conn
 $ output.var: chr "db.data"
 $ engine    : chr "sql"

  |...............................................................                                                                                        |  42%
  ordinary text without R code

  |............................................................................                                                                           |  50%
label: unnamed-chunk-3 (with options) 
List of 1
 $ echo: logi FALSE

  |........................................................................................                                                               |  58%
  ordinary text without R code

  |.....................................................................................................                                                  |  67%
label: unnamed-chunk-4 (with options) 
List of 1
 $ echo: logi FALSE

  |.................................................................................................................                                      |  75%
  ordinary text without R code

  |..............................................................................................................................                         |  83%
label: unnamed-chunk-5 (with options) 
List of 1
 $ echo: logi FALSE

  |..........................................................................................................................................             |  92%
  ordinary text without R code

  |.......................................................................................................................................................| 100%
label: unnamed-chunk-6 (with options) 
List of 1
 $ echo: logi FALSE

同一文件的第二次执行在处理第二个文件时给出以下输出

> outfile = c(outfile, knit_child("File2.Rmd"))


processing file: File2.Rmd
Error in parse_block(g[-1], g[1], params.src) : 
  duplicate label 'unnamed-chunk-1'

3 个答案:

答案 0 :(得分:1)

https://bookdown.org/yihui/rmarkdown-cookbook/duplicate-label.html

似乎提供了对此确切问题的解释和解决方案
options(knitr.duplicate.label = "allow")

当我遇到相同的问题时,我已经在自己的系统上尝试过,并且已解决。

答案 1 :(得分:1)

有2种情况:

  1. 您可能有重复的块名
  2. 您可能已经复制并粘贴了相同的代码。如果是这样,请执行以下操作:

options(knitr.duplicate.label = "allow")

https://bookdown.org/yihui/rmarkdown-cookbook/duplicate-label.html

答案 2 :(得分:0)

为任何遇到类似错误的人提供答案:

  

这可能是重复的代码块。

检查文档中是否有重复的代码块名称,在以下示例中,块名称<>中:

```{r <block-name> }```

此解决方案对rstudio上的用户cderv表示完全的敬意。