R MarkDown和R NoteBook之间的区别

Pag*_*Max 107 r rstudio knitr r-markdown rnotebook

我试图在高层次上理解R Markdown和之间的区别R NoteBook.我知道它们是相互关联的,但我想弄清楚它们是如何相关的.我的理解是这样的:

我知道RNotebooks真的是R Markdown文档,但我对术语感到困惑.

RStudio新文件选项有R Markdown和,R NoteBook并且选择其中任何一个打开R Markdown文件但有细微差别.所以只是想弄清楚为什么有两种选择,两者之间有什么区别?

在此输入图像描述

我知道R笔记本是新推出的,R Makrdown已经存在了一段时间.部分混乱可能是因为我R Markdown在引入R Notebook之前从未使用过,所以我的相关或更具体的问题是

什么是R NoteBook不同于仅使用R MarkDown或R NoteBook带来了哪些新功能?

我在网络搜索上的所有点击都指出R笔记本使用R Markdown但我没有找到任何帮助,两者之间的具体差异.

R. *_*ost 38

据我所知,从我的设置来看,没有编码差异.不同之处在于渲染.文件扩展名是相同的.

当你制作一个新的Rnotebook时,它会在标题的输出选项中添加html_notebook.这就是区别.然后,您可以快速预览渲染,而无需编织.它还会在您每次保存时刷新预览.但是在那个预览中你没有代码输出(没有数字,没有表..)(至少在我的设置中).如果输出中没有htm_notebook,则没有按钮预览

在此输入图像描述

正如您所看到的那样,预览选项会显示,但您也可以以任何您想要的格式编织它.当你这样做时,它会将它添加到标题代码中.

在此输入图像描述

但是,如果你的标题中没有html_notebook,你只能编码你的代码看看它的样子(整本书)(请忽略我在图片中添加的附加默认选项)

在此输入图像描述

并且预览选项不会显示在下拉菜单中

在此输入图像描述

否则它的工作方式相同.对于某些defaut配置,输出也会在代码部分中通过defaut隐藏.

请注意,您可以在标题中混合多个输出选项,以便您可以保留预览并保留用于导出的编织选项.

  • 你的答案绝对是我认为使用它几个月之后的差异.让我印象深刻的是R笔记本是R MarkDown的全部和高于什么.为什么继续使用R Markdown呢?你可以使用R笔记本直接"编织"而不是"预览",你有你的R Markdown功能! (3认同)
  • 当您使用 ar 笔记本时,您_肯定_会获得预览、图形(动态和静态)、表格等中的所有输出......这个答案应该修改以删除说您没有得到它的声明。R 笔记本在很大程度上因此而优越,您每次都可以通过重新编译获得所有输出,因为预览会记住块的最后输出。它使您能够迭代地编写(这始终是您所需要的) (3认同)
  • 作为附加组件,笔记本存在 UTC(考虑重音和非英文字符)的错误。它会搞砸你的输出和你的文件......所以最好坚持降价......这一点仍在解决中(据我所知) (2认同)
  • 我认为更多的遗留问题,以免混淆已经使用Rmarkdown的人.此外,当前版本的笔记本(或R)有我上面提到的错误,这使我无法使用它.我的文本在源文件中也被替换为乱码,这取决于我使用的方式(从rmardown到笔记本或笔记本到rmarkdown).所以我坚持降价,直到我能解决这个问题.特别是笔记本预览对我来说没有用,只是预览没有情节等的文本..但它有很大的潜力. (2认同)

小智 30

最近我发现这篇帖子让我明白了R Markdown vs. R Notebook的问题. http://uc-r.github.io/r_notebook

以下是一些相关的行:

编写R Notebook文档与编写R Markdown文档没什么不同.文本和代码块语法与您在R Markdown教程中学到的内容没有区别.主要区别在于R笔记本的交互性.主要是在R Markdown文档中执行块时,所有代码立即发送到控制台,但在R Notebook中,一次只发送一行.这允许在行引发错误时停止执行.

在RStudio中创建R笔记本时,还有针对编织与预览的内容:

预览显示编辑器内容的呈现HTML副本.因此,与Knit不同,Preview不会运行任何R代码块.而是显示最后一次在编辑器中运行时块的输出.

希望你觉得它有用.

  • 第二部分对于理解差异特别有帮助! (4认同)

Sea*_*igh 7

从以上答案中,最重要的区别之一还不是很清楚。

Bookdown书籍的 3.2.1.3节中:

编辑器工具栏上Restart R and Run All ChunksRun菜单中还有一个项目,它为您提供了在运行所有块之前的全新R会话。这类似于Knit按钮,该按钮启动一个单独的R会话来编译文档。

换句话说,编织会创建一个新的环境并在那里运行所有代码。相比之下,R Notebook照原样使用Global Environment呈现HTML文件。实际上,对于R Notebook,每次.Rmd保存文档时都会对HTML文件进行更改。该Preview按钮仅以其当前状态打开HTML文件。没有代码运行。Preview它的字面意思是:它只是向您显示已完成的操作。

为什么这么重要?例如,如果.Rmd打开了一个R Notebook 文件,但是没有运行任何代码块,则HTML文件将呈现所有的标记和输入代码,而不会出现任何输出。或者,假设您x在控制台中定义了一些变量,但未在代码块中定义。如果您尝试x在R Notebook中的某个地方使用它,那将很好用。预览HTML文档也可以正常工作。另一方面,编织文档将生成“未知变量”错误,因为编织会在新环境中运行所有代码,并且该变量x从未在markdown文件中的任何位置定义。


Sau*_*ain 7

相似之处: R notebook 和 R Markdown 文档非常相似。Markdown 格式适用于两种文件类型。这两种文件格式都可用于与其他人交流代码以及结果和评论。可以选择将创建的文档编织为 HTML、PDF 和 WORD 输出格式。如果代码中有错误,则不会生成输出。运行文件:CTRL+SHIFT+K,插入代码块:CTRL+ALT+I。

R Markdown 文档: Rmd 文档可以通过向导进行配置,并具有可重复性文档、演示幻灯片、闪亮应用程序等选项以及从模板创建文档的选项。如果更改代码,则输出将在 Rmd 输出中执行。它不提供预览文档的选项。YAML 标头的输出格式为: output: html_document

R Notebook 文档: R nb 文档直接启动,不会出现向导(如.RMD 的情况)。与 notebook 文件一起生成了一个扩展名为 *.nb.html 的附加 html 文件。笔记本具有预览选项。如果更改或编辑任何代码,则不会显示新输出。输出显示在代码编辑器本身中。无论旧的输出是什么,它都只会被渲染。代码更改不会生成新的输出。为了显示代码输出,我们需要执行块然后它会出现在输出中。YAML 标头的输出为: output: html_notebook

YAML 标头:如果我们将 YAML 标头从一个文件更改为另一个文件,则会更改文档的类型。例如,您有一个 R 笔记本,其 YAML 标头为 html_notebook。如果您更改 YAML 标头,您的 R 笔记本将转换为 R Markdown 文档。

如果您必须选择一个,请使用RMarkdown文档,因为它提供更多控制并在您编织后立即更新文档。


IVI*_*VIM 6

这是我发现的一个实际差异:

当您需要注释掉一部分文本时,RMarkdown 会插入文本的#每一行,而 RNotebook 巧妙地将文本封装在一对<!--,--->符号之间(如在 html 文件中)

有人可能会说,这是多么微不足道的区别。然而,正因为如此,我现在总是在 RStudio 中使用 R Notebook(而不是 RMarkdown)来处理我的所有文档。在其他所有方面,它们似乎都相同(至少对于我的需要,例如生成 html 和 pdf)

否则,我的评论会突然变成标题,如下所示:

# This part is commented out, but will show as Heading 1 font text
Run Code Online (Sandbox Code Playgroud)


Swo*_*olf 5

区别在于,在R Notebok中,您可以编写Markdown和R代码块并直接执行它们并立即查看结果。它是一种适合自己的笔记本。

R Markdown可以在html,pdf或word文档中创建美观的输出。组合Markdown和R-Code-Chunk。这里有简短的介绍和动机

如果您想在此处获取有关knitr Package的更多信息。

  • @PagMax我认为区别在于从Rmarkdown文件呈现html输出的速度。当您要使用knitr生成R降价的html输出时,需要花费一些时间来“编织”所有代码并生成输出。为了加快速度,您可以通过将输出更改为“ html_notebook”,在Rstudio中使用Rnotebook“模式”以html格式查看Rmarkdown,它可以让您执行重新运行块,然后执行ctrl + shift + k(pc)和html刷新非常快。 (3认同)
  • 好吧,这仍然不能解释Markdown与Notebook有何不同。(我知道笔记本使用markdown),但是R markdown在去年推出的R笔记本之前就存在。那么,R笔记本中有哪些新功能,这些功能以前仅使用R markdown不可能实现? (2认同)