आर मार्कडाउन और आर नोटबुक के बीच अंतर


136

मैं एक उच्च स्तर पर समझने की कोशिश कर रहा हूं कि क्या अंतर है R Markdownऔर R NoteBook। मुझे पता है कि वे परस्पर जुड़े हुए हैं, लेकिन मैं यह पता लगाना चाहूंगा कि वे कैसे संबंधित हैं। मेरी समझ यह है:

मुझे पता है कि आर नोटबुक वास्तव में आर मार्कडाउन दस्तावेज हैं, लेकिन मैं शब्दावली के बारे में भ्रमित हूं।

RStudio नए फ़ाइल विकल्प में दोनों हैं R Markdownऔर R NoteBookउनमें से किसी एक को चुनने से R Markdownफ़ाइल खुलती है लेकिन मामूली अंतर के साथ। तो बस यह पता लगाने की कोशिश कर रहे हैं कि दो विकल्प क्यों हैं और दोनों के बीच क्या अंतर है?

यहाँ छवि विवरण दर्ज करें

मैं समझता हूं कि आर नोटबुक को नए रूप में पेश किया गया है और आर मार्केडाउन कुछ समय के लिए रहा है। भ्रम का एक हिस्सा हो सकता है क्योंकि R Markdownआर नोटबुक को पेश करने से पहले मैंने कभी उपयोग नहीं किया था इसलिए मेरा संबंधित या अधिक विशिष्ट प्रश्न है

आर नोटबुक्स सिर्फ आर मार्कडाउन का उपयोग करने से अलग क्या कर रहा है या आर नोटबुक क्या नई क्षमता ला रहा है?

वेब खोज पर मेरे सभी हिट इंगित कर रहे हैं कि आर नोटबुक आर मार्केडाउन का उपयोग करता है लेकिन मुझे उन दोनों के बीच विशेष रूप से अलग होने पर कोई मदद नहीं मिली।


1
मैं knitr और LaTeX का उपयोग करता हूं, इसलिए मैं R Sweave विकल्प चुनता हूं। RMarkdown का उपयोग नहीं करने पर, मैं कह सकता हूं कि LaTex कुछ भी कर सकता है, लेकिन यह शक्ति अपने साथ जटिलता और सीखने की अवस्था लेकर आती है। इसके अलावा, समर्थकों और पर्याप्त पुस्तकों और संसाधनों का एक विशाल समुदाय है।
लॉरिएर

1
धन्यवाद @lawyeR मैं संसाधनों के बारे में चिंतित नहीं हूं और मैं आर और लाटेक्स के आसपास अपना रास्ता अच्छी तरह से पा सकता हूं। मैंने आश्चर्य किया कि स्वेव क्या था लेकिन मुझे लगा कि मैं इसके बारे में बाद में चिंता करूंगा। उस पर अपनी अंतर्दृष्टि के लिए धन्यवाद। अभी के लिए मैं आर। के इन विभिन्न स्वादों के बीच शीर्ष स्तर के अंतर को देख रहा हूँ
पगमैक्स

5
और जब आप मैनुअल पढ़ने के बहुत बड़े प्रशंसक होते हैं, तो उस वास्तविक प्रश्न को पढ़ने के बारे में जो आपने डाउनवोट किया है और प्रलेखन से डंपिंग सामग्री के बजाय प्रश्न में पूछे गए उत्तर के बारे में विशिष्ट है?
पैगमैक्स

जवाबों:


55

जहां तक ​​मैं समझता हूं और मेरे सेटअप से कोई कोडिंग अंतर नहीं है। अंतर प्रतिपादन में है। फ़ाइल एक्सटेंशन समान है।

जब आप एक नया आर नोटबुक बनाते हैं तो यह html_notebookहेडर में आउटपुट विकल्प में जोड़ता है। यही अंतर है। फिर आप इसे बुनाई के बिना जल्दी से प्रतिपादन का पूर्वावलोकन कर सकते हैं। यह आपके द्वारा सेव किए जाने पर पूर्वावलोकन को भी ताज़ा करता है। हालाँकि उस पूर्वावलोकन में आपके पास कोड आउटपुट (कोई आंकड़े नहीं, कोई तालिका नहीं है ..) (कम से कम मेरे सेटअप में)। html_notebookआउटपुट के बिना कोई बटन पूर्वावलोकन नहीं है

यहाँ छवि विवरण दर्ज करें

जैसा कि आप देख सकते हैं पूर्वावलोकन विकल्प दिखाता है, लेकिन आप इसे किसी भी स्वरूप में भी बुनना चाहते हैं। ऐसा करने पर यह हेडर कोड में जुड़ जाएगा।

यहाँ छवि विवरण दर्ज करें

हालाँकि यदि आपके पास ऐसा नहीं है html_notebook, तो आप अपने हेडर में केवल अपने कोड को देख सकते हैं कि यह कैसा दिखता है (पूरी किताब) (कृपया चित्र के साथ मेरे द्वारा डाले गए अतिरिक्त डिफ़ॉल्ट विकल्प को अनदेखा करें)

यहाँ छवि विवरण दर्ज करें

और पूर्वावलोकन का विकल्प ड्रॉप डाउन मेनू में नहीं दिखता है

यहाँ छवि विवरण दर्ज करें

अन्यथा यह समान काम करता है। कुछ डिफ़ॉल्ट कॉन्फ़िगरेशन के लिए आउटपुट भी कोड सेक्शन में डिफ़ॉल्ट रूप से छिपा होता है।

ध्यान दें कि आप अपने हेडर में कई आउटपुट विकल्प मिला सकते हैं ताकि आप पूर्वावलोकन रख सकें और निर्यात के लिए अपने बुनना विकल्प रख सकें।


2
एक ऐड-ऑन के रूप में नोटबुक के साथ UTC (खाते के उच्चारण और गैर-अंग्रेजी वर्णों को ध्यान में रखते हुए) के साथ एक बग है। यह आपके आउटपुट और आपकी फ़ाइल को खराब कर देगा ... इसलिए मार्कडाउन के लिए बेहतर छड़ी ... यह बिंदु अभी भी संबोधित किया जा रहा है (जहाँ तक मुझे पता है)
R. Prost

4
आपका जवाब बिल्कुल वही है जो मुझे लगता है कि कुछ महीनों के लिए इसका उपयोग करने के बाद अंतर है। क्या मुझे धड़कता है आर नोटबुक सब कुछ है और ऊपर आर मार्कडाउन क्या है। फिर आर मार्केडाउन क्यों जारी है? आप "पूर्वावलोकन" के बजाय आर नोटबुक और सीधे "निट" का उपयोग कर सकते हैं और आपके पास अपनी आर मार्केड कार्यक्षमता है !!
पगमैक्स

2
मुझे लगता है कि विरासत की अधिक समस्या, इसलिए रमार्कडाउन का उपयोग करने वाले लोगों को भ्रमित करने के लिए नहीं। प्लस नोटबुक के वर्तमान संस्करण (या आर) में उस बग का उल्लेख है जो मुझे मूल रूप से उपयोग करने से रोकता है। मेरे पाठ को स्रोत फ़ाइल में भी अस्पष्टता के साथ बदल दिया जाता है, इस पर निर्भर करता है कि मैं किस तरीके का उपयोग करता हूं (rmardown से नोटबुक या नोटबुक में rmarkdown के लिए)। इसलिए मैं मार्कडाउन से तब तक जुड़ा रहा हूं जब तक कि मैं इसे ठीक नहीं कर सकता। विशेष रूप से कि नोटबुक पूर्वावलोकन मेरे लिए उतना उपयोगी नहीं है, बस पाठों को प्लॉट आदि के बिना पूर्वावलोकन करना है। लेकिन इसमें बहुत अधिक संभावनाएं हैं।
आर। प्रॉस्ट

41

हाल ही में मुझे यह पोस्ट मिली जिसने मुझे आर मार्केडाउन बनाम आर नोटबुक मुद्दे पर स्पष्ट कर दिया। http://uc-r.github.io/r_notebook

यहाँ कुछ प्रासंगिक लाइनें हैं:

आर नोटबुक दस्तावेज़ लिखना आर मार्कडाउन दस्तावेज़ लिखने से अलग नहीं है। टेक्स्ट और कोड चंक सिंटैक्स आर मार्केडट ट्यूटोरियल में जो आपने सीखा है, उससे भिन्न नहीं है। प्राथमिक अंतर एक आर नोटबुक की अंतरात्मा में है। मुख्य रूप से यह कि जब एक आर मार्केडाउन डॉक्यूमेंट में चंक्स को निष्पादित किया जाता है, तो सभी कोड एक ही बार में कंसोल में भेजे जाते हैं , लेकिन एक आर नोटबुक में, एक समय में केवल एक लाइन भेजी जाती है । यह निष्पादन को रोकने की अनुमति देता है यदि कोई पंक्ति त्रुटि उठाती है।

जब आप RStudio में R नोटबुक बनाते हैं, तब भी यह बुनना बनाम पूर्वावलोकन पर होता है:

पूर्वावलोकन आपको संपादक की सामग्री की एक प्रदान की गई HTML प्रति दिखाता है। नतीजतन, निट के विपरीत , पूर्वावलोकन कोई आर कोड विखंडू नहीं चलाता है। इसके बजाय, संपादक में अंतिम बार चलने पर चंक का आउटपुट प्रदर्शित होता है।

उम्मीद है यह आपको उपयोगी होगा।


अंतर समझने के लिए वह दूसरा भाग विशेष रूप से सहायक है!
गेलगार्सिया

15

सबसे महत्वपूर्ण अंतरों में से एक उपरोक्त उत्तरों से पूरी तरह से स्पष्ट नहीं है।

पुस्तक पुस्तिका की धारा ३.२.१.३ से :

संपादक टूलबार पर मेनू Restart R and Run All Chunksमें एक आइटम भी है Run, जो आपको सभी विखंडू चलाने से पहले एक ताज़ा आर सत्र देता है। यह Knitबटन के समान है , जो दस्तावेज़ को संकलित करने के लिए एक अलग आर सत्र शुरू करता है।

दूसरे शब्दों में, बुनाई एक नया वातावरण बनाती है और वहां सभी कोड चलाती है। कंट्रास्ट के माध्यम से, आर नोटबुक एचटीएमएल फ़ाइल को रेंडर करने के लिए ग्लोबल एनवायरनमेंट का उपयोग करता है। वास्तव में, एक R नोटबुक के लिए, HTML फ़ाइल में परिवर्तन हर बार .Rmdदस्तावेज़ सहेजे जाने के बाद होता है। Previewबटन केवल अपनी वर्तमान स्थिति में HTML फ़ाइल को खोलता है। कोई कोड नहीं चलाया जाता है। Previewशाब्दिक अर्थ है कि यह क्या कहता है: यह सिर्फ आपको दिखाता है कि पहले से क्या किया गया है।

यह बात क्यों है? उदाहरण के लिए, यदि कोई R नोटबुक .Rmdफ़ाइल खोली जाती है, लेकिन कोई कोड चंक्स नहीं चलाया जाता है, तो HTML फ़ाइल सभी मार्कडाउन और इनपुट कोड को ठीक प्रस्तुत करेगी, लेकिन कोई आउटपुट नहीं आएगा। या, मान लीजिए कि आप xकंसोल में कुछ चर को परिभाषित करते हैं, लेकिन कोड चंक में नहीं। यदि आप xआर नोटबुक में कहीं उपयोग करने की कोशिश करते हैं , तो यह ठीक काम करेगा। HTML दस्तावेज़ का पूर्वावलोकन करना भी ठीक काम करेगा। दूसरी ओर, दस्तावेज़ को बुनाई एक "अज्ञात चर" त्रुटि उत्पन्न करेगा क्योंकि बुनाई एक नए वातावरण में सभी कोड चलाता है, और चर xको मार्कडाउन फ़ाइल में कहीं भी परिभाषित नहीं किया गया था।


7

अंतर यह है कि आर नोटबोक में आप मार्कडाउन और आर-कोड चंक्स लिख सकते हैं और सीधे उन्हें निष्पादित कर सकते हैं और तुरंत परिणाम देख सकते हैं। यह अपने लिए एक नोटबुक की तरह है।

HTML, PDF या वर्ड डॉक्यूमेंट में अच्छा दिखने वाला आउटपुट बनाने के लिए R Markdown है। मार्कडाउन और आर-कोड-चंक्स का मेल। एक संक्षिप्त परिचय और प्रेरणा यहाँ मिल सकती है

यदि आप यहाँ knitr Package klick के बारे में अधिक जानकारी प्राप्त करना चाहते हैं।


2
वैसे यह अभी भी यह स्पष्ट नहीं करता है कि मार्कडाउन नोटबुक से अलग कैसे है। (मुझे समझ में आता है कि नोटबुक मार्कडाउन का उपयोग करता है) लेकिन आर मार्कडाउन आर नोटबुक से पहले मौजूद था जहां पिछले साल पेश किया गया था। तो आर नोटबुक में कौन सी नई विशेषताएं हैं जो पहले केवल आर मार्कडाउन का उपयोग करके संभव नहीं थीं?
पगमार्क

3
@PagMax मुझे लगता है कि अंतर आपके Rmarkdown फ़ाइल से आपके HTML आउटपुट को रेंडर करने की गति में है। जब आप अपने आर मार्केड का html आउटपुट तैयार करने के लिए निट का उपयोग करना चाहते हैं, तो आपके सभी कोड को "निट" करने और आउटपुट उत्पन्न करने में थोड़ा समय लगता है। इसे तेज करने के लिए, आप अपने आउटपुट को "html_notebook" में बदलकर Rstudio में "Rnotebook" मोड का उपयोग करके html में अपने रेकॉर्डडाउन को देख सकते हैं, यह आपको एक रन-रन चंक को निष्पादित करने देता है, फिर ctrl + + k (पीसी) और html बहुत जल्दी रिफ्रेश हो जाता है।
चेंज ०२_२३

1
मुझे लगता है कि ओपी को होने वाली समस्या यह है कि वास्तव में 2 के बीच बहुत बड़ा अंतर नहीं है। मुख्य अंतर जो मैं देख रहा हूं, जो कि मैं यहां के जवाबों को पढ़ने से ज्यादातर उठाता हूं, वह यह है कि आरएनबी आपको आर के एकल विखंडन की अनुमति देता है। कोड स्वतंत्र रूप से और "लाइन में" जबकि आरएमडी को आपको पूरी फाइल सौंपने या प्रस्तुत करने की आवश्यकता नहीं होती है। सोचिए अगर आपके पास एक बहुत बड़ी फाइल थी और सिर्फ छोटे चार्ट पर जांच की जरूरत थी। आरएनबी उसके लिए अच्छा है। RMD रेंडर करने में बहुत लंबा समय ले सकता है और इस प्रकार यह असुविधाजनक है।
ब्रायन गोगिन

@BryanGoggin आप अभी भी Rmd में स्वतंत्र विखंडू को भी निष्पादित कर सकते हैं।
पैगमेक्स

5

यहाँ एक व्यावहारिक अंतर है जो मैंने पाया:

जब आपको पाठ के एक हिस्से पर टिप्पणी करने की आवश्यकता होती है, तो RMarkdown #आपके पाठ की प्रत्येक पंक्ति में सम्मिलित करता है, जबकि RNotebook बड़े करीने से <!--, --->(HTML फ़ाइलों में) संकेतों की एक जोड़ी के बीच पाठ को कूटबद्ध करता है ।

कोई कह सकता है, क्या तुच्छ अंतर है। हालाँकि, इसके कारण, मैं अब हमेशा अपने सभी दस्तावेजों के लिए RStudio में R नोटबुक (RMarkdown के बजाय) का उपयोग करता हूं। बाकी सब चीज़ों में, वे एक जैसे लगते हैं (मेरी ज़रूरतों के लिए, कम से कम, जैसे कि html और pdf पैदा करना)

अन्यथा, मेरी टिप्पणियाँ अचानक हेडर बन जाती हैं, जैसे नीचे:

# This part is commented out, but will show as Heading 1 font text

4

http://rmarkdown.rstudio.com/r_notebooks.html#notebook_file

"साधारण आर मार्काडाउन दस्तावेज़" बुनना "हैं, लेकिन नोटबुक" पूर्वावलोकन "हैं। जबकि नोटबुक पूर्वावलोकन एक रेंडर किए गए आर मार्काडाउन दस्तावेज़ के समान दिखता है, नोटबुक पूर्वावलोकन आपके किसी भी आर कोड विखंडू को निष्पादित नहीं करता है"


2
मैं सहमत हूँ। "पूर्वावलोकन" सुविधा दोनों के बीच एकमात्र अंतर है। मुझे आश्चर्य है कि जब रेनकोट एक अतिरिक्त पूर्वावलोकन सुविधा के साथ होता है तो रॉटबुक क्या है, तो वे रमार्कडाउन पर क्यों लटकाते हैं।
पैगमेक्स

4

समानताएं: आर नोटबुक और आर मार्कडाउन दस्तावेज़ बहुत समान हैं। मार्कडाउन प्रारूप दोनों फ़ाइल प्रकारों में काम करता है। दोनों फ़ाइल स्वरूपों का उपयोग कोड को संप्रेषित करने के लिए किया जा सकता है। कोई HTML, PDF और WORD आउटपुट स्वरूपों के लिए बनाए गए दस्तावेज़ को बुनना चुन सकता है। यदि कोड में कोई त्रुटि है, तो आउटपुट उत्पन्न नहीं होगा। फ़ाइल चलाने के लिए: CTRL + SHIFT + K और कोड चंक सम्मिलित करना: CTRL + ALT + I।

आर मार्कडाउन दस्तावेज़: आरएमडी दस्तावेज़ को एक विज़ार्ड के माध्यम से कॉन्फ़िगर किया जा सकता है और इसमें प्रतिलिपि प्रस्तुत करने योग्य दस्तावेज़, प्रस्तुति स्लाइड, चमकदार ऐप आदि और टेम्पलेट से दस्तावेज़ बनाने का विकल्प होता है। यदि आप कोड बदलते हैं, तो Rmd आउटपुट में ouput को निष्पादित किया जाता है। यह दस्तावेज़ का पूर्वावलोकन करने का विकल्प प्रदान नहीं करता है। YAML हेडर में आउटपुट फॉर्मेट इस प्रकार है: आउटपुट: html_document

आर नोटबुक दस्तावेज़: R nb दस्तावेज़ को सीधे लॉन्च किया गया है और कोई विज़ार्ड नहीं है (जैसा कि .RMD के मामले में) प्रकट होता है। नोटबुक फ़ाइल के साथ, एक अतिरिक्त HTML फ़ाइल जो * .nb.html का विस्तार करती है, उत्पन्न होती है। नोटबुक में पूर्वावलोकन के लिए विकल्प है। यदि कोई कोड परिवर्तित या संपादित किया गया है, तो नया आउटपुट नहीं दिखाया गया है। आउटपुट को कोड एडिटर में ही दिखाया जाता है। जो भी पुराना आउटपुट था वह केवल रेंडर किया गया है। कोड परिवर्तन से कोई नया आउटपुट उत्पन्न नहीं होता है। कोड आउटपुट दिखाने के लिए, हमें चंक को निष्पादित करना होगा और फिर यह आउटपुट में दिखाई देगा। YAML हेडर के रूप में आउटपुट है: आउटपुट: html_notebook

YAML हेडर : यदि हम YAML हेडर को एक फाइल से दूसरी फाइल में बदलते हैं, तो यह डॉक्यूमेंट के प्रकार को बदल देगा। उदाहरण के लिए, आपके पास एक R नोटबुक है जिसमें html_notebook के रूप में YAML हेडर है। यदि आप YAML हेडर को बदलते हैं, तो आपका आर नोटबुक आर मार्कडाउन दस्तावेज़ में परिवर्तित हो जाएगा।

अगर आपको कोई एक चुनना है, तो RMarkdown डॉक्यूमेंट के साथ जाएं क्योंकि यह जैसे ही आप इसे बुनते हैं वैसे ही अधिक नियंत्रण और अपडेट डॉक्यूमेंट प्रदान करते हैं।


3

से jrnold :

नोटबुक फ़ाइलों को कंसोल छुपाते हुए संपादक के अंदर आउटपुट दिखाता है। मार्कडाउन फाइलें कंसोल के अंदर आउटपुट दिखाती हैं, और एडिटर के अंदर आउटपुट नहीं दिखाती हैं। वे अपने YAML हेडर में आउटपुट के मूल्य में भिन्न होते हैं।
R नोटबुक के लिए YAML हेडर में लाइन होगी,

---
ouptut: html_notebook
---

R मार्कडाउन फ़ाइल के लिए YAML हेडर में लाइन होगी,

ouptut: html_document

एक आर नोटबुक फ़ाइल से एक आर नोटबुक से YAML हेडर की नकल करना, इसे आर मार्कडाउन फ़ाइल में बदल देता है, और इसके विपरीत। अधिक विशेष रूप से, इसका मान बदलना outputइसलिए है क्योंकि खोलते समय RStudio IDE और बुनाई करते समय रेकॉर्डड पैकेज एक फ़ाइल के YAML हेडर का उपयोग करता है, और विशेष रूप outputसे YAML हेडर में कुंजी का मान , यह निर्धारित करने के लिए कि यह किस प्रकार का दस्तावेज़ है। है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.