web-dev-qa-db-fra.com

Différence entre R MarkDown et R NoteBook

J'essaie de comprendre à un niveau élevé les différences entre R Markdown et R NoteBook. Je sais qu'ils sont liés entre eux, mais j'aimerais savoir comment ils sont liés. Ma compréhension est la suivante:

Je sais que les carnets de notes R sont vraiment des documents R Markdown, mais je ne comprends pas très bien la terminologie.

L'option de nouveau fichier RStudio a à la fois R Markdown et R NoteBook et la sélection de l'un d'eux ouvre un fichier R Markdown mais avec des différences mineures. Donc, juste essayer de comprendre pourquoi il y a deux options et quelle est la différence entre les deux?

enter image description here

Je comprends que les ordinateurs portables R ont été introduits récemment et que R Markdown est là depuis un certain temps. Une partie de la confusion peut être due au fait que je n’ai jamais utilisé R Markdown avant la création de R Notebook, ma question connexe ou plus spécifique est:

Qu'est-ce que R NoteBook fait différemment que d'utiliser simplement R MarkDown ou quelles nouvelles fonctionnalités apporte R NoteBook?

Tous mes résultats sur la recherche Web indiquent que R Notebook utilise R Markdown mais je n’ai pas trouvé d’aide sur ce qui est spécifiquement différent entre les deux.

98
PagMax

Autant que je sache et de par ma configuration, il n'y a pas de différence de codage. La différence réside dans le rendu. L'extension de fichier est la même.

Lorsque vous créez un nouveau bloc-notes R, il ajoute html_notebook dans l'option de sortie de l'en-tête. C'est la différence. Vous pouvez alors prévisualiser rapidement le rendu sans avoir à le tricoter. Il actualise également l'aperçu chaque fois que vous enregistrez. Cependant, dans cet aperçu, vous n'avez pas la sortie de code (pas de chiffres, pas de tableaux ..) (du moins dans ma configuration). Sans html_notebook dans la sortie, il n'y a pas de prévisualisation de bouton

enter image description here

comme vous pouvez le voir, les options de prévisualisation apparaissent, mais vous pouvez aussi les tricoter dans le format de votre choix. Cela l'ajoutera au code d'en-tête quand vous le ferez.

enter image description here

Cependant, si vous n'avez pas ce html_notebook dans votre en-tête, vous ne pouvez que tricoter votre code pour voir à quoi il ressemble (le livre en entier) (veuillez ignorer l'option par défaut supplémentaire que j'ai mise avec l'image)

enter image description here

et l'option de prévisualisation ne s'affiche pas dans le menu déroulant

enter image description here

Sinon, ça marche pareil. Pour certaines configurations par défaut, la sortie est également masquée par défaut dans la section de code.

Notez que vous pouvez combiner plusieurs options de sortie dans votre en-tête afin de conserver l'aperçu et de conserver vos options de tricot pour l'exportation.

34
R. Prost

Récemment, j'ai trouvé cet article qui m'a clairement fait comprendre le problème R Markdown vs. R Notebook. http://uc-r.github.io/r_notebook

Voici quelques lignes pertinentes:

Écrire un document R Notebook n’est pas différent de l’écriture d’un document R Markdown. La syntaxe du bloc de texte et de code ne diffère pas de ce que vous avez appris dans le tutoriel R Markdown. La principale différence réside dans l'interativité d'un carnet de notes R. Principalement, lors de l’exécution de morceaux dans un document R Markdown, , tout le code est envoyé simultanément à la console , mais dans un bloc-notes R, une seule ligne à la fois est envoyée . Cela permet à l'exécution de s'arrêter si une ligne génère une erreur.

Il y a aussi ceci sur l'aperçu lorsque vous créez un carnet R dans RStudio:

L'aperçu vous montre une copie HTML rendue du contenu de l'éditeur. Par conséquent, contrairement à , Knit , Preview ne lance aucun fragment de code R. Au lieu de cela, la sortie du bloc lors de la dernière exécution dans l'éditeur est affichée.

J'espère que vous le trouverez utile.

25
Mani Tajaddini

La différence est que dans R Notebok, vous pouvez écrire des fragments Markdown et R-code, les exécuter directement et voir les résultats immédiatement. C'est une sorte de cahier pour vous-même.

R Markdown est là pour créer de jolis résultats en HTML, PDF ou Word. Combinaison de Markdown et de morceaux de code R. ne courte introduction et la motivation peuvent être trouvés ici .

Si vous voulez avoir plus d’informations sur le paquetage klick cliquez ici.

5
Swolf

L'une des différences les plus importantes n'apparaît pas clairement dans les réponses ci-dessus.

De la section 3.2.1.3 du Bookdown book :

Il existe également un élément Restart R and Run All Chunks dans le menu Run de la barre d'outils de l'éditeur, ce qui vous donne une nouvelle session R avant d'exécuter tous les morceaux. Cette opération est similaire au bouton Knit, qui lance une session R distincte pour compiler le document.

En d'autres termes, le tricotage crée un nouvel environnement et y exécute tout le code. En revanche, le R Notebook utilise l'environnement global pour restituer le fichier HTML. En fait, pour un bloc-notes R, les modifications du fichier HTML ont lieu chaque fois que le document .Rmd est enregistré. Le bouton Preview ouvre simplement le fichier HTML dans son état actuel. Aucun code n'est exécuté. Preview signifie littéralement ce qu'il dit: il vous montre simplement ce qui a déjà été fait.

Pourquoi est-ce important? Par exemple, si un fichier R Notebook .Rmd est ouvert, mais qu'aucun morceau de code n'est exécuté, le fichier HTML restituera parfaitement le code de démarque et de saisie, mais aucun résultat ne s'affichera. Ou bien, supposons que vous définissiez une variable x dans la console, mais pas dans un bloc de code. Si vous essayez d'utiliser x quelque part dans un cahier R, cela fonctionnera parfaitement. La prévisualisation du document HTML fonctionnera également très bien. D'autre part, le fait de tricoter le document générera une erreur "variable inconnue", car il exécute tout le code dans un nouvel environnement et la variable x n'a jamais été définie dans le fichier de réduction.

4
Sean Raleigh

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

"Les documents R Markdown ordinaires sont" tricotés ", mais les carnets de notes sont" prévisualisés ". L'aperçu du bloc-notes ressemble à un document R Markdown, mais n'exécute aucune de vos parties de code R"

3
Sibo Jiang

Voici une différence pratique que j'ai trouvée:

Lorsque vous devez commenter une partie du texte, RMarkdown insère # dans chaque ligne de votre texte, tandis que RNotebook encapsule parfaitement le texte entre une seule paire de signes <!--, ---> (comme dans fichiers html)

On peut dire quelle différence insignifiante. Cependant, à cause de cela, j’utilise maintenant toujours R Notebook (au lieu de RMarkdown) dans RStudio pour tous mes documents. Dans tout le reste, ils semblent identiques (pour mes besoins, du moins, comme générer du HTML et des pdf)

Sinon, mes commentaires deviennent soudain des en-têtes, comme ci-dessous:

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

Similarites: Le cahier R et le document R Markdown sont assez similaires. Le format Markdown fonctionne dans les deux types de fichiers. Les deux formats de fichier peuvent être utilisés pour communiquer du code ainsi que des résultats et des commentaires à des tiers. Vous pouvez choisir de relier le document créé aux formats de sortie HTML, PDF et Word. S'il y a une erreur dans le code, la sortie ne sera pas générée. Pour exécuter le fichier: CTRL + MAJ + K et insérer le bloc de code: CTRL + ALT + I.

R Markdown document: Le document Rmd peut être configuré via un assistant et propose des options pour reproduire le document, les diapositives de présentation, une application brillante, etc. et une option pour créer un document à partir d'un modèle. Si vous modifiez le code, la sortie est exécutée dans la sortie Rmd. Il n'offre pas l'option de prévisualiser le document. L’en-tête YAML a le format de sortie suivant: output: html_document

R Notebook Document: Le document R nb est lancé directement et aucun assistant (comme dans le cas de .RMD) n'apparaît. En plus du fichier cahier, un fichier HTML supplémentaire portant l'extension * .nb.html est généré. Le cahier a l'option pour Aperçu. Si un code est modifié ou modifié, la nouvelle sortie ne s'affiche pas. La sortie est affichée dans l'éditeur de code lui-même. Quel que soit l'ancien résultat, il est seulement rendu. Aucune nouvelle sortie n'est générée à partir du changement de code. Pour afficher la sortie du code, nous devons exécuter le bloc, qui apparaîtra ensuite dans la sortie. L'en-tête YAML a la sortie suivante: output: html_notebook

En-tête YAML: Si nous changeons l’en-tête YAML d’un fichier à un autre, le type du document sera modifié. Par exemple, vous avez un bloc-notes R dont l'en-tête YAML est html_notebook. Si vous modifiez l'en-tête YAML, votre bloc-notes R sera converti en document R. Markdown.

Si vous devez en choisir un, utilisez RMarkdown car il offre plus de contrôle et met à jour les documents dès que vous le créez.

2
Saurabh Jain

De jrnold :

Les fichiers de cahier R affichent la sortie dans l'éditeur tout en masquant la console. Les fichiers R markdown affichent la sortie dans la console et non dans l'éditeur. Ils diffèrent par la valeur de la sortie dans leurs en-têtes YAML.
L’en-tête YAML du cahier R aura la ligne suivante:

---
ouptut: html_notebook
---

L’en-tête YAML du fichier de démarquage R aura la ligne,

ouptut: html_document

La copie de l'en-tête YAML d'un bloc-notes R vers un fichier R markdown le modifie en fichier R markdown, et inversement. Plus spécifiquement, changer la valeur de output en Ceci est dû au fait que le RStudio IDE lors de l’ouverture et le package rmarkdown lorsque knitting utilise l'en-tête YAML d'un fichier, et en particulier la valeur de la touche output de l'en-tête YAML, pour déterminer le type de document correspondant.

1
Yang Dai