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隐藏.
请注意,您可以在标题中混合多个输出选项,以便您可以保留预览并保留用于导出的编织选项.
小智 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代码块.而是显示最后一次在编辑器中运行时块的输出.
希望你觉得它有用.
从以上答案中,最重要的区别之一还不是很清楚。
从Bookdown书籍的 3.2.1.3节中:
编辑器工具栏上
Restart R and Run All Chunks
的Run
菜单中还有一个项目,它为您提供了在运行所有块之前的全新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文件中的任何位置定义。
相似之处: 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文档,因为它提供更多控制并在您编织后立即更新文档。
这是我发现的一个实际差异:
当您需要注释掉一部分文本时,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)
区别在于,在R Notebok中,您可以编写Markdown和R代码块并直接执行它们并立即查看结果。它是一种适合自己的笔记本。
R Markdown可以在html,pdf或word文档中创建美观的输出。组合Markdown和R-Code-Chunk。这里有简短的介绍和动机。
如果您想在此处获取有关knitr Package的更多信息。