1. 安装
假设你已经安装了R[1](R Core Team 2020)和RStudio IDE[2]。
不需要RStudio,但建议使用RStudio,因为它可使普通用户更轻松地使用R Markdown。如果未安装RStudio IDE,则必须安装Pandoc(http://pandoc.org),否则不需要单独安装Pandoc,因为RStudio已将其捆绑在一起。
接下来,Rstudio中安装rmarkdown软件包,可以通过下面任意一种方式:
代码语言:javascript复制# Install from CRAN
install.packages('rmarkdown')
# Or if you want to test the development version,
# install from GitHub
if (!requireNamespace("devtools"))
install.packages('devtools')
devtools::install_github('rstudio/rmarkdown')
如果要生成PDF输出,则需要安装LaTeX。对于从未安装过LaTeX的R Markdown用户,建议安装TinyTeX[3]:
代码语言:javascript复制install.packages('tinytex')
tinytex::install_tinytex() # install TinyTeX
TinyTeX是一种轻便,可移植,跨平台,易于维护的LaTeX发行版。R配套软件包tinytex可以帮助你在将LaTeX或R Markdown文档编译为PDF时自动安装缺少的LaTeX软件包,并确保将LaTeX文档编译正确的次数以解决所有交叉引用。
注: 如果TinyTex通过上面代码无法正常安装,可以参考张敬信老师的知乎文章:搭建Latex环境:TinyTex RStudio https://zhuanlan.zhihu.com/p/328585804 如果编译.rmd格式时出现缺失某些Latex包,可以参考这节内容https://bookdown.org/yihui/rmarkdown-cookbook/install-latex-pkgs.html
2. 新建Rmarkdown项目
- 点击Rstudio左上角的新建项目,选择Rmarkdown文件格式,即可建立一个rmarkdown编辑文件 。
新建流程
- 在弹出的选项框里,可以申明rmarkdown的Title、Author以及默认的输出文件格式,一般可以选择HTML、PDF、Word格式,具体见下图。
选项框
- 在新建的markdown文件里,主要包含三块内容:1.YAML、2.markdown文本、3.代码块。
rmd主要包含
1)YAML
YAML是Rmarkdown的头部文件(上图1位置),YAML定义了rmarkdwon的性质,比如title、author、date、指定output文件类型等。
2)markdown文本
markdown文本是rmarkdown里的主要内容(上图3位置),由编辑人员按照markdown语法自行编写文本内容,
3)代码块
rmarkdown的一个主要功能是可以执行文件内的代码块(上图2位置),并将代码执行结果展示在markdown里。这对撰写数据分析报告带来了极大的便利。Rmd文件中除了R代码段以外, 还可以插入Rcpp、Python、Julia、SQL等许多编程语言的代码段, 常用编程语言还可以与R代码段进行信息交换。
这三个部分会在以后做详细介绍。
3. Rmarkdown的导出
rmarkdown的导出方法有两种,一种是依靠Rstudio手动导出,另一种是基于命令行的导出方式。
手动导出
手动导出
手动导出方法很简单,在完成mardown编辑后,手动点击上图红圈内knit按钮,选择导出格式类型即可,Rstudio支持导出PDF、html、word三种类型。
命令行导出
命令行导出主要依靠rmarkdown::render实现,render函数主要包含如下几个参数:
- input指定需要导出的rmarkdwon文件地址
- output_format指定需要导出的文件类型,同样支持pdf、word、html等多种文件格式。若未指定output_format格式,则输出rmarkdown文件中output指定的格式类型。
rmarkdown::render("test.Rmd")
命令行导出
4. Rstudio界面介绍
这时Rstudio的界面发生了一些变化,我们对界面做一些介绍,尤其是最新版本的新功能,视频介绍已在b站更新(公众号不能倍速)。
演示的Rstudio版本为4.0.3
参考资料
[1]
R: https://www.r-project.org
[2]
RStudio IDE: https://www.rstudio.com
[3]
TinyTeX: https://yihui.name/tinytex/