दो RMarkdown (.Rmd) फ़ाइलों को एक आउटपुट में कैसे संयोजित करें?

How Combine Two Rmarkdown



समाधान:

अगस्त, 2018 अपडेट: यह उत्तर के आगमन से पहले लिखा गया था बुकडाउन , जो रमार्कडाउन आधारित पुस्तकें लिखने का एक अधिक शक्तिशाली तरीका है। न्यूनतम देखें बुकडाउन @ मिकी-हार्पर के उत्तर में उदाहरण!

जब मैं एक बड़ी रिपोर्ट को अलग Rmd में तोड़ना चाहता हूं, तो मैं आमतौर पर एक पैरेंट Rmd बनाता हूं और अध्यायों को बच्चों के रूप में शामिल करता हूं। नए उपयोगकर्ताओं के लिए यह दृष्टिकोण समझना आसान है, और यदि आप सामग्री की तालिका (toc) शामिल करते हैं, तो अध्यायों के बीच नेविगेट करना आसान है।



रिपोर्ट.आरएमडी



--- शीर्षक: मेरी रिपोर्ट आउटपुट: pdf_document: toc: हाँ --- ``{r बच्चा = 'chapter1.Rmd'} ``` `` {r बच्चा = 'chapter2.Rmd'} ```

अध्याय1.आरएमडी



# अध्याय १ यह अध्याय १ है। ```{r} 1 ```

अध्याय २. आरएमडी

# अध्याय 2 यह अध्याय 2 है। ``{r} 2 ```

निर्माण

rmarkdown::render('report.Rmd')

जो उत्पादन करता है: छवि विवरण यहां दर्ज करें



और यदि आप अपने बच्चे के दस्तावेज़ों के लिए विखंडू बनाने का एक त्वरित तरीका चाहते हैं:

आरएमडी<- list.files(pattern = '*.Rmd', recursive = T) chunks <- paste0('```{r child = '', rmd, ''}
```
') cat(chunks, sep = '
') # ```{r child = 'chapter1.Rmd'} # ``` # # ```{r child = 'chapter2.Rmd'} # ```   

मेरा सुझाव है कि लोग इसका उपयोग करें बुकडाउन एकाधिक आर मार्कडाउन फाइलों से रिपोर्ट बनाने के लिए पैकेज। यह क्रॉस-रेफरेंसिंग जैसी बहुत सी उपयोगी सुविधाएँ जोड़ता है जो लंबे दस्तावेज़ों के लिए बहुत उपयोगी हैं।

से उदाहरण को अपनाना @ एरिक , यहाँ का एक न्यूनतम उदाहरण है बुकडाउन सेट अप। मुख्य विवरण यह है कि मुख्य फ़ाइल को कॉल करना हैindex.Rmd , और इसमें अतिरिक्त YAML लाइन शामिल होनी चाहिएसाइट: बुकडाउन :: बुकडाउन_साइट:

सूचकांक.आरएमडी

--- शीर्षक: 'एक न्यूनतम बुकडाउन दस्तावेज़' साइट: बुकडाउन :: बुकडाउन_साइट आउटपुट: बुकडाउन :: पीडीएफ_दस्तावेज़ 2: टीओसी: हाँ ---

01-परिचय।Rmd :

# अध्याय १ यह अध्याय १ है। ```{r} 1 ```

02-परिचय।Rmd :

# अध्याय 2 यह अध्याय 2 है। ``{r} 2 ```

अगर हम बुनते हैंसूचकांक.आरएमडी बुकडाउन एक ही निर्देशिका में सभी फाइलों को वर्णानुक्रम में मर्ज करेगा (इस व्यवहार को एक अतिरिक्त का उपयोग करके बदला जा सकता है_bookdown.yml फ़ाइल)।

एक बार जब आप इस बुनियादी सेटअप के साथ सहज हो जाते हैं, तो अतिरिक्त कॉन्फ़िगरेशन फ़ाइलों का उपयोग करके बुकडाउन दस्तावेज़ और आउटपुट स्वरूपों को अनुकूलित करना आसान होता है।_bookdown.yml और_आउटपुट.वाईएमएल

आगे की पढाई

  • आर मार्कडाउन: निश्चित गाइड: अध्याय 11 बुकडाउन का एक अच्छा अवलोकन प्रदान करता है
  • बुकडाउन के साथ ऑथरिंग बुक्स बुकडाउन पर एक व्यापक गाइड प्रदान करता है, और अधिक उन्नत विवरणों के लिए अनुशंसित है।

यह मेरे लिए काम किया:

आरएमडी_बिंद<- function(dir = '.', book_header = readLines(textConnection('---
title: 'Title'
---'))) { old 0){ warning('book.Rmd already exists') } write(book_header, file = 'book.Rmd', ) cfiles <- list.files(pattern = '*.Rmd', ) ttext <- NULL for(i in 1:length(cfiles)){ text <- readLines(cfiles[i]) hspan <- grep('---', text) text <- text[-c(hspan[1]:hspan[2])] write(text, sep = '
', file = 'book.Rmd', append = T) } render('book.Rmd', output_format = 'pdf_document') setwd(old) }  

कल्पना कीजिए कि एक बेहतर समाधान है और अच्छा होगा कि रमार्कडाउन या निट पैकेज में ऐसा कुछ हो।