Ich versuche auf hohem Niveau zu verstehen, was die Unterschiede zwischen R Markdown
und sind R NoteBook
. Ich weiß, dass sie miteinander zusammenhängen, aber ich möchte herausfinden, wie sie zusammenhängen. Mein Verständnis ist folgendes:
Ich weiß, dass R-Notebooks wirklich R-Markdown-Dokumente sind, aber ich bin verwirrt über die Terminologien.
Die neue Dateioption von RStudio bietet beides R Markdown
und durch R NoteBook
Auswahl einer der beiden Optionen wird eine R Markdown
Datei geöffnet , jedoch mit geringfügigen Unterschieden. Versuchen Sie also herauszufinden, warum es zwei Optionen gibt und was der Unterschied zwischen den beiden ist.
Ich verstehe, dass R-Notebooks neu eingeführt wurden und R Markdown schon eine Weile da ist. Ein Teil der Verwirrung könnte darin liegen, dass ich R Markdown
R Notebook vor der Einführung noch nie verwendet habe, daher ist meine verwandte oder spezifischere Frage
Was macht R NoteBook anders als nur R MarkDown oder welche neuen Funktionen bringt R NoteBook?
Alle meine Treffer bei der Websuche deuten darauf hin, dass R Notebook R Markdown verwendet, aber ich habe keine Hilfe gefunden, was sich speziell zwischen den beiden unterscheidet.
Antworten:
Soweit ich weiß und von meinem Setup gibt es keinen Codierungsunterschied. Der Unterschied liegt im Rendering. Die Dateierweiterung ist dieselbe.
Wenn Sie ein neues R-Notebook erstellen, wird
html_notebook
die Ausgabeoption in der Kopfzeile hinzugefügt. Das ist der Unterschied. Sie können dann schnell eine Vorschau des Renderings anzeigen, ohne es stricken zu müssen. Außerdem wird die Vorschau bei jedem Speichern aktualisiert. In dieser Vorschau haben Sie jedoch keine Code-Ausgabe (keine Abbildungen, keine Tabellen ...) (zumindest in meinem Setup). Ohnehtml_notebook
in der Ausgabe gibt es keine SchaltflächenvorschauWie Sie sehen können, werden die Vorschauoptionen angezeigt, aber Sie können sie auch in einem beliebigen Format stricken. Es wird dem Header-Code hinzugefügt, wenn Sie dies tun.
Wenn Sie das jedoch nicht
html_notebook
in Ihrer Kopfzeile haben, können Sie Ihren Code nur stricken, um zu sehen, wie er aussieht (das gesamte Buch) (bitte ignorieren Sie die zusätzliche Standardoption, die ich mit dem Bild eingefügt habe).und die Option zur Vorschau wird nicht im Dropdown-Menü angezeigt
Ansonsten funktioniert es genauso. Bei einigen Standardkonfigurationen ist die Ausgabe standardmäßig auch im Codeabschnitt ausgeblendet.
Beachten Sie, dass Sie mehrere Ausgabeoptionen in Ihrem Header mischen können, damit Sie die Vorschau beibehalten und Ihre Strickoptionen für den Export beibehalten können.
quelle
Kürzlich habe ich diesen Beitrag gefunden, der mir das Problem R Markdown vs. R Notebook deutlich gemacht hat. http://uc-r.github.io/r_notebook
Hier sind einige relevante Zeilen:
Außerdem gibt es dies bei Strick vs. Vorschau, wenn Sie ein R-Notebook in RStudio erstellen:
Ich hoffe, Sie finden es nützlich.
quelle
Einer der wichtigsten Unterschiede ergibt sich aus den obigen Antworten nicht ganz.
Aus Abschnitt 3.2.1.3 des Bookdown-Buches :
Mit anderen Worten, das Stricken schafft eine neue Umgebung und führt den gesamten Code dort aus. Im Gegensatz dazu verwendet das R-Notizbuch die globale Umgebung wie sie ist, um die HTML-Datei zu rendern. Tatsächlich werden bei einem R-Notizbuch Änderungen an der HTML-Datei jedes Mal vorgenommen, wenn das
.Rmd
Dokument gespeichert wird. DiePreview
Schaltfläche öffnet lediglich die HTML-Datei in ihrem aktuellen Zustand. Es wird kein Code ausgeführt.Preview
bedeutet wörtlich, was es sagt: Es zeigt Ihnen nur, was bereits getan wurde.Warum ist das wichtig? Wenn beispielsweise eine R-Notebook-
.Rmd
Datei geöffnet wird, aber keine Codeblöcke ausgeführt werden, rendert die HTML-Datei den gesamten Markdown- und Eingabecode einwandfrei, es wird jedoch keine Ausgabe angezeigt. Angenommen, Sie definieren eine Variablex
in der Konsole, jedoch nicht in einem Codeblock. Wenn Sie versuchen,x
irgendwo in einem R-Notebook zu verwenden, funktioniert es einwandfrei. Die Vorschau des HTML-Dokuments funktioniert ebenfalls einwandfrei. Auf der anderen Seite wird beim Stricken des Dokuments ein Fehler "unbekannte Variable" generiert, da beim Stricken der gesamte Code in einer neuen Umgebung ausgeführt wird und die Variablex
in der Markdown-Datei nirgendwo definiert wurde.quelle
Der Unterschied besteht darin, dass Sie in R Notebok Markdown- und R-Code-Chunks schreiben und diese direkt ausführen können, um sofort Ergebnisse zu sehen. Es ist eine Art Notizbuch für sich.
R Markdown dient dazu, gut aussehende Ausgaben in HTML, PDF oder einem Word-Dokument zu erstellen. Markdown und R-Code-Chunks kombinieren. Eine kurze Einführung und Motivation finden Sie hier .
Wenn Sie weitere Informationen zum Knitr-Paket erhalten möchten, klicken Sie hier.
quelle
Hier ist ein praktischer Unterschied, den ich gefunden habe:
Wenn Sie benötigen einen Teil des Textes auf Kommentar, RMarkdown Einsätze
#
in jeder Zeile des Textes, während RNotebook ordentlich Text zwischen einem einzigen Paar von kapselt<!--
,--->
Zeichen (wie in HTML - Dateien)Man kann sagen, was für ein trivialer Unterschied. Aus diesem Grund verwende ich jetzt in RStudio für alle meine Dokumente immer R Notebook (anstelle von RMarkdown). In allem anderen scheinen sie gleich zu sein (zumindest für meine Bedürfnisse, wie zum Beispiel das Generieren von HTML- und PDF-Dateien).
Ansonsten werden meine Kommentare plötzlich zu Überschriften, wie unten:
quelle
http://rmarkdown.rstudio.com/r_notebooks.html#notebook_file
"Gewöhnliche R-Markdown-Dokumente sind" gestrickt ", aber Notizbücher werden" in der Vorschau "angezeigt. Während die Notizbuchvorschau einem gerenderten R-Markdown-Dokument ähnelt, führt die Notizbuchvorschau keinen Ihrer R-Code-Blöcke aus."
quelle
Ähnlichkeiten: Das R-Notizbuch und das R-Markdown-Dokument sind ziemlich ähnlich. Das Markdown-Format funktioniert in beiden Dateitypen. Beide Dateiformate können für die Kommunikation von Code zusammen mit Ergebnissen und Kommentaren an andere verwendet werden. Sie können das erstellte Dokument in die Ausgabeformate HTML, PDF und WORD stricken. Wenn der Code einen Fehler enthält, wird keine Ausgabe generiert. So führen Sie die Datei aus: STRG + UMSCHALT + K und fügen einen Codeblock ein: STRG + ALT + I.
R Markdown-Dokument: Das Rmd-Dokument kann über einen Assistenten konfiguriert werden und bietet Optionen für das Reproduzierbarkeitsdokument, Präsentationsfolien, eine glänzende App usw. sowie eine Option zum Erstellen eines Dokuments aus einer Vorlage. Wenn Sie den Code ändern, wird die Ausgabe in der Rmd-Ausgabe ausgeführt. Es bietet keine Option zur Vorschau des Dokuments. Der YAML-Header hat das Ausgabeformat: output: html_document
R-Notebook-Dokument: Das R nb-Dokument wird direkt gestartet und es wird kein Assistent (wie im Fall von .RMD) angezeigt. Zusammen mit der Notebook-Datei wird eine zusätzliche HTML-Datei mit der Erweiterung * .nb.html generiert. Das Notebook verfügt über die Option zur Vorschau. Wenn Code geändert oder bearbeitet wird, wird die neue Ausgabe nicht angezeigt. Die Ausgabe wird im Code-Editor selbst angezeigt. Was auch immer die alte Ausgabe war, sie wird nur gerendert. Aus der Codeänderung wird keine neue Ausgabe generiert. Um die Code-Ausgabe anzuzeigen, müssen wir den Block ausführen, und dann wird er in der Ausgabe angezeigt. Der YAML-Header hat folgende Ausgabe: output: html_notebook
YAML-Header : Wenn wir den YAML-Header von einer Datei in eine andere ändern, ändert sich der Dokumenttyp. Sie haben beispielsweise ein R-Notizbuch mit einem YAML-Header als html_notebook. Wenn Sie den YAML-Header ändern, wird Ihr R-Notizbuch in ein R-Markdown-Dokument konvertiert.
Wenn Sie eines auswählen müssen, wählen Sie das RMarkdown- Dokument, da es mehr Kontrolle bietet und Dokumente aktualisiert, sobald Sie es stricken.
quelle
Von jrnold :
R-Notebook-Dateien zeigen die Ausgabe im Editor an, während die Konsole ausgeblendet wird. R-Markdown-Dateien zeigen die Ausgabe in der Konsole und nicht die Ausgabe im Editor. Sie unterscheiden sich im Wert der Ausgabe in ihren YAML-Headern.
Der YAML-Header für das R-Notebook enthält die Zeile:
Der YAML-Header für die R-Markdown-Datei enthält die Zeile:
Durch Kopieren des YAML-Headers von einem R-Notebook in eine R-Markdown-Datei wird er in eine R-Markdown-Datei geändert und umgekehrt. Das Ändern des Werts von
output
in Dies liegt insbesondere daran, dass die RStudio-IDE beim Öffnen und das rmarkdown- Paket beim Stricken den YAML-Header einer Datei und insbesondere den Wert desoutput
Schlüssels im YAML-Header verwenden, um zu bestimmen, um welche Art von Dokument es sich handelt ist.quelle