1.5w字的Rmarkdown入门教程汇总(一)

简介: 1.5w字的Rmarkdown入门教程汇总

本文框架


88F($ZQ[@ZKOY22M68{RJ{F.png


第一章:Rmarkdown 简介


Rmarkdown 是 R 语言环境中提供的 markdown 编辑工具,运用 rmarkdown 撰写文章,既可以像一般的 markdown 编辑器一样编辑文本,也可以在 rmarkdown 中插入代码块,并将代码运行结果输出在 markdown 里。R Markdown 格式,简称为 Rmd 格式, 相应的源文件扩展名为.Rmd。输出格式可以是 HTML、docx、pdf、beamer 等。

前面介绍参考:李东风老师的《R 语言教程》[1]

对于专注于用 R 语言写报告的数据分析师来说,rmarkdown 既提高了数据分析工作的便捷性,也提高了数据分析报告的复用性。markdown 的教程以及对应的编辑器介绍可见:R沟通|markdown编辑器—Typora可跳转) 这一期主要介绍 Rmarkdown。


1.1官网视频介绍

先通过官方视频[2]来看看 Rmarkdown 的介绍。                       08a108f72ae0246f061eb1ca2c23d55b.png1:17

:该视频来自官网,一般不一定打得开,所以小编为大家着想就下载下来了,以便大家更好地学习。


视频已经非常清楚的介绍了Rmarkdown如何使用,内部构造、不同的输出类型,以及其他拓展(发布,与github相连)等。我们先对此进行简单了解即可,之后几期我会详细介绍。当然,官网也有一套 Rmarkdown 的入门教程,欢迎大家前去学习,官网截图如下:

JMS3S_DQXCFF$}8PX2BP6RF.png

其他参考资料可见这一期推文:R分享|Rmarkdown参考资料分享和自制视频教程预告可跳转。knitr 的详细文档参见网站knitr 文档[3]。关于 R Markdown 可参考专著(Xie, Allaire, and Grolemund 2019[4])和(Xie, Dervieux, and Riederer 2020[5])。

RStudio 网站提供了一个 R Markdown 使用cheatsheet下载,可以在公众号后台回复cheatsheet,获得包括rmarkdown在内的小抄。Pandoc 的文档见pandoc 网站[6]

这一期内容不多,主要介绍下 Rmarkdown 的基本概念,给出一些参考资料,下一期正式进入 Rmarkdown 的手把手学习。


第二章:Rmarkdown流程演示


2.1. 安装

假设你已经安装了R[7](R Core Team 2020)和RStudio IDE[8]

不需要RStudio,但建议使用RStudio,因为它可使普通用户更轻松地使用R Markdown。如果未安装RStudio IDE,则必须安装Pandoc(http://pandoc.org),否则不需要单独安装Pandoc,因为RStudio已将其捆绑在一起。

接下来,Rstudio中安装rmarkdown软件包,可以通过下面任意一种方式:

# 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[9]

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.2. 新建Rmarkdown项目

  1. 点击Rstudio左上角的新建项目,选择Rmarkdown文件格式,即可建立一个rmarkdown编辑文件 。

8ca48267326278c83626d7e5d6ffd34.png

新建流程

  1. 在弹出的选项框里,可以申明rmarkdown的Title、Author以及默认的输出文件格式,一般可以选择HTML、PDF、Word格式,具体见下图。

58a0c1c02798385a99c83126706342a.png

  1. 在新建的markdown文件里,主要包含三块内容:1).YAML、2).markdown文本、3).代码块。

image.gif

rmd主要包含

1)YAML:是Rmarkdown的头部文件(上图1位置),YAML定义了rmarkdwon的性质,比如title、author、date、指定output文件类型等。

2)markdown文本:是rmarkdown里的主要内容(上图3位置),由编辑人员按照markdown语法自行编写文本内容。

3)代码块:rmarkdown的一个主要功能是可以执行文件内的代码块(上图2位置),并将代码执行结果展示在markdown里。这对撰写数据分析报告带来了极大的便利。Rmd文件中除了R代码段以外, 还可以插入Rcpp、Python、Julia、SQL等许多编程语言的代码段, 常用编程语言还可以与R代码段进行信息交换。

这三个部分会在以后做详细介绍。


2.3. Rmarkdown的导出

rmarkdown的导出方法有两种,一种是依靠Rstudio手动导出,另一种是基于命令行的导出方式。

手动导出

5b11389c8d32f5404b268a7e3393d14.png

手动导出

手动导出方法很简单,在完成mardown编辑后,手动点击上图红圈内knit按钮,选择导出格式类型即可,Rstudio支持导出PDF、html、word三种类型。


命令行导出

命令行导出主要依靠rmarkdown::render实现,render函数主要包含如下几个参数:

  • input:指定需要导出的rmarkdwon文件地址
  • output_format:指定需要导出的文件类型,同样支持pdf、word、html等多种文件格式。若未指定output_format格式,则输出rmarkdown文件中output指定的格式类型。
rmarkdown::render("test.Rmd")

YWCOG[E8A6@XO(Q3}2HZMW4.png


2.4. Rstudio界面介绍

这时Rstudio的界面发生了一些变化,我们对界面做一些介绍,尤其是最新版本的新功能,视频介绍已在b站更新(公众号不能倍速)。

024a487827d61f6290139b7064a71b6.png11:点击查看原视频05

演示的Rstudio版本为4.0.3


目录
相关文章
|
6月前
|
存储 数据可视化 Python
单细胞RNA速率分析: scVelo入门教程
单细胞RNA速率分析: scVelo入门教程
单细胞RNA速率分析: scVelo入门教程
|
数据采集 自然语言处理 数据挖掘
利用ChatGPT进行数据分析——如何提出一个好的prompt
利用ChatGPT进行数据分析——如何提出一个好的prompt
485 0
|
小程序 JavaScript 前端开发
黑马程序员uni-app 小兔鲜儿 项目及bug记录(上)
黑马程序员uni-app 小兔鲜儿 项目及bug记录(上)(2)
230 4
|
11月前
|
存储 JSON 开发工具
三、HarmonyOS NEXT应用开发:ArkTS工程目录结构(Stage模型)
本文介绍了HarmonyOS NEXT应用开发中ArkTS工程的目录结构(Stage模型),包括AppScope、entry、hvigor、oh_modules等主要目录及其作用。重点解析了entry目录下的src > main > resources目录结构,详细说明了base、限定符目录和rawfile的作用,以及如何引用资源文件。
593 1
|
12月前
|
缓存 负载均衡 网络协议
高并发架构的CDN知识介绍
本文详细介绍了网络请求过程,特别是大型网站架构中DNS和CDN的作用。通过一张常用架构图,文章解释了从客户端请求到服务器响应的全过程,包括DNS解析、负载均衡、CDN加速等关键环节,帮助读者深入了解高并发架构的设计原理和优化方法。
596 1
|
弹性计算 开发框架 安全
阿里云服务器常见的四种购买方式及适用场景和注意事项参考
阿里云服务器目前常见的购买方式有自定义购买、快速购买、通过活动购买、通过云市场镜像页面购买这四种购买方式,每种方式都有主要的适合对象,购买流程也不是完全一样的。本文将详细解析阿里云服务器的四种主流购买方式:自定义购买、快速购买、通过活动购买、以及通过云市场镜像页面购买,并解析每种方式的适用场景及购买流程和注意事项,以供参考。
阿里云服务器常见的四种购买方式及适用场景和注意事项参考
|
JSON 前端开发 Java
深入SpringMVC聊跨域问题的最佳实践
本文将深度剖析SpringMVC中的跨域问题及其最佳实践,尤其聚焦于Jsonp接口在技术升级中遇到的跨域难题。结合一个具体的案例,展示在技术升级过程中,原有JSONP接口出现跨域问题的表现及原因,以及如何通过自定义SpringMVC的拦截器和MessageConvertor来解决这个问题。
|
SQL 前端开发 Java
springboot项目中使用shiro实现用户登录以及权限的验证
这篇文章详细介绍了如何在Spring Boot项目中集成Apache Shiro框架来实现用户登录和权限验证,包括项目依赖配置、数据库连接、实体类定义、控制器、服务层、Mapper层以及前端页面的实现,并展示了实际效果和过滤器代码。
springboot项目中使用shiro实现用户登录以及权限的验证
|
机器学习/深度学习 数据可视化 数据挖掘
【视频】线性混合效应模型(LMM,Linear Mixed Models)和R语言实现案例(一)
【视频】线性混合效应模型(LMM,Linear Mixed Models)和R语言实现案例
|
人工智能 自然语言处理 文字识别
MinerU-大语言语料处理神器,CPU/GPU均可跑,开源免费“敲”好用
在7月4日举行的WAIC 2024科学前沿主论坛上,书生·浦语2.5正式发布,面向大模型研发与应用的全链条工具体系同时迎来升级。
MinerU-大语言语料处理神器,CPU/GPU均可跑,开源免费“敲”好用