在Rmd文件中,knit_child打印了不必要的输出

9

我曾成功地使用knit_child生成PDF文件,遵循http://yihui.name/knitr/demo/child/的代码,但是当我尝试在一个.Rmd文件中使用该示例时:

```{r, results='asis', echo=FALSE, message=FALSE}
out = NULL
for (p in c("p1","p2","p3","p4","p5","p6","p7","p8","p9","p10")) {
  out = c(out, knit_child('quick_variable.Rmd'))
  cat(out)
}
```

我修改了原始代码,以便在 Rmd 中工作。

我有两个问题,第一个问题:

|
| | 0% |
|... | 5% ordinary text without R code

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

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

|
|.............. | 21% label: unnamed-chunk-5 (with options) List of 2 $ echo : logi FALSE $ results: chr "asis"
.... 
(the output follows)

很明显,所有这些输出都是不必要的。我认为这个问题与上面代码中使用的 cat 相关,但如果我删除它,就没有任何输出和绘图被打印出来。我应该怎么做才能解决这个问题呢?
提前感谢您的帮助。
2个回答

9
您可以将结果收集在out中,并在内联R表达式中稍后将其写入输出,例如:
```{r include=FALSE}
out = NULL
for (p in c("p1","p2","p3","p4","p5","p6","p7","p8","p9","p10")) {
  out = c(out, knit_child('quick_variable.Rmd'))
}
```
`r paste(out, collapse='\n')`

谢谢您的快速回复,不幸的是这并没有起作用...输出结果仍然相同。还有其他想法吗? - nanounanue

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接