R Markadown 作为一款通过R语言创建动态文档的写作排版工具,为数据科学提供了现成的写作框架。通过 R Markdown 不仅可以运行和保存R代码,还可以生成高质量的数据分析报告并以HTML、PDF或者word的形式分享。
1
get started
很早就对R语言可以制作高质量的报告有所耳闻,但也没有很强的意愿去研究一番。究其缘由在于写公众号时无法不会优雅的插入代码块,便有意去看看R Markdown 的效果如何。首先要说明的是 R Markdown 是基于Rstudio环境的,平时一直在强调R语言和R软件本身,对Rstudio并没有过多提及,其实Rstudio是一款相当优越的R语言GUI,对于像我这样不喜欢MATLAB的人而言,Rstudio简直就是天降神器。R Markdown 的亮点在于其本身的语法环境运行的R代码可以保存并优雅的插入文档中,相应的文档也可以通过knit转化为HTML、PDF和word等规范化的文本格式。
R语言中有rmarkdown包来支持整个报告的生成过程,直接安装即可。
install.packages("rmarkdown")
首先在Rstudio中创建一个txt文档并将其另存为.Rmd格式:
创建完 .Rmd格式文档后,我们就可以着手写一份基于 R Markdown 的报告啦。
2
create R Markdown
通常而言 .Rmd文档由 txt文本、嵌入式的R代码块以及相应的文档渲染参数YAML组成。当我们在Rstudio中打开一个.Rmd 文档并点击运行时,相应的代码和运行结果会被同时保存,也可*插入后续代码。之后可以由knit将结果通过pandoc转化为指定的文档格式。R Markdown 的运作流程如下:(图片来自Rstudio官方R Markdown帮助手册)
R Markdown文本处理
R Markdown 有自身文本格式规范,对于标题、列表、超链接以及字体等都有相应的格式约束,先看一例文本:
相应的HTML输出效果为:
由图中我们可以看出Pandoc's Markdown 的一些文本格式规范和YAML渲染参数:
● 双虚线里的内容规定了报告的标题、输出格式。
● 单星号*代表斜体字体,双星号**代表加粗字体。
● #代表标题,单#表示一级标题,双##表示二级标题。
● 相应的我们还可以在报告中按照要求添加列表、图片、链接、LaTeX公式、表格、参考文献等等报告所需的其他元素。
报告中嵌入代码块(code chunks)
R Markdown 中嵌入R代码也是极其方便的。Rstudio有三种方式可以嵌入代码块:
● 快捷键Ctrl + Alt + I
● 直接在工具栏点击Insert命令
● 手动输入 ```{r}
和 ```
展示一下R Markdown 中嵌入代码块的效果:
相应的knit生成HTML报告的效果:
另外还有一些代码显示的选择项:
● include=false 代码和结果仅显示但均不显示。
● echo=false 不显示代码仅显示结果
knit渲染输出格式
为了将报告输出为HTML、PDF或者word等规范的文档格式,我们需要点击knit转化功能。 ** **
选定相应的文本格式后,knit就生成对应的文本并保存到工作目录中。这样一个简单的R Markdown 报告就做好了,排版简约又美观~ ** **
当然了,要想用R Markdown做一份美观完整的数据分析报告就需要花些时间啦,R Markdown也远不止小编写的这些功能,Rstudio官方的R Markdown帮助文档介绍了更多的包括R Notebooks、幻灯片、交互式文档等内容,有兴趣的同学可以自行去参考学习。
参考资料:
扫码关注数据科学家养成记