knit_child in a Rmd file is printing unwanted output

好久不见. 提交于 2020-01-01 05:01:20

问题


I had succesfully used knit_child for generating pdf files, following the code of http://yihui.name/knitr/demo/child/, but when I try to use that example in a .Rmd file:

```{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)
}
```

(I modify the original code, for work in Rmd).

I have two problems, the first one:

|
| | 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)

Obviously all this output is unwanted. I believe that this problem is related to the use of cat in the code above, but if I remove that, no output, no plots is printed. What can I do for solving this?

Thanks in advance


回答1:


You can collect the results in out, and write it to the output later in an inline R expression, e.g.

```{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')`


来源:https://stackoverflow.com/questions/18923392/knit-child-in-a-rmd-file-is-printing-unwanted-output

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!