使用knitr将降价文档的部分插入另一个降价文档中

时间:2013-07-11 12:53:07

标签: r markdown knitr r-markdown

我知道这可以用php和其他语言完成,但是想知道是否可以使用knitr完成以下操作:

假设我有一个带有两个标题1部分的Rmarkdown(.rmd)文档:

# This is the first heading for the first document
Lorem ipsum dolor sit amet

# This is the second heading for the first document
plot(object)
  1. 问题1:如果打开另一个.rmd文档,我该如何创建链接,以便在解析时,此文档将显示其内容以及第一个文档中的整个内容。例如:

    # This is the first heading for the second document
    Lorem ipsum dolor sit amet
    
    [command goes here to insert the first document]
    

    结果将是:

    # This is the first heading for the second document
    Lorem ipsum dolor sit amet
    
    # This is the first heading for the first document
    Lorem ipsum dolor sit amet
    
    # This is the second heading for the first document
    [plot shows up here]
    
  2. 问题2:knitr允许我选择并仅将文档1的选定部分插入到文档2中吗?例如,仅标题1及其下方的内容,或仅标题2及其图

1 个答案:

答案 0 :(得分:26)

  1. 这是块选项child的用途,例如在second.Rmd中,您可以

    ```{r child='first.Rmd'}
    ```
    
  2. 这有点棘手,但您可以手动拨打knit_child(),例如

    ```{r echo=FALSE, results='asis'}
    # knit the first three lines of first.Rmd
    cat(knit_child(text = readLines('first.Rmd')[1:3]), sep = '\n')
    ```