Вставлять фрагменты уцененного документа внутри другого документа уценки с использованием knitr - программирование

Вставлять фрагменты уцененного документа внутри другого документа уценки с использованием knitr

Я знаю, что это можно сделать с помощью php и других языков, но задавалось вопросом, можно ли выполнить следующее: knit:

Скажем, у меня есть документ Rmarkdown (.rmd) с двумя разделами раздела 1:

# 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: если открыть другой документ .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: позволит ли мне научить выбирать и вставлять только отдельные части документа 1 в документ 2? Например, только заголовок 1 и содержимое ниже него или только заголовок 2 и его график

4b9b3361

Ответ 1

  • это то, что для параметра chunk child есть, например. в second.Rmd вы можете

    ```{r child='first.Rmd'}
    ```
    
  • это немного сложнее, но вы можете вызвать 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')
    ```