Rmarkdown入门汇总

R Markdown介绍

RMarkdown为我们的数据分析创建一个清晰美观的报告,它能够包含代码,图,表,说明,查看的人能够很清楚地理解。

RMarkdown利用Markdown的语法,能够被方便的转成其他类型(如html或pdf)的文件。

如果要用RMarkdown,首先要下载R和RStudio。

R Markdown是通过R语言制作动态文档的文件格式。

R Markdown文档编辑需要 rmarkdown包,rmarkdown安装需要RStudio编辑器环境,但是你可以以github途径来下载rmarkdown,并安装。

devtools:install_github("rmarkdown", "rstudio")

R Markdown是资源代码丰富并高可用的文件,你可以将通过一下两种方式改变R Markdown文件格式。

  1. knit - knit 文件. rmarkdown包调用knitr包, knitr 将运行所有的R代码,并将得到的结果追加到代码之后,这种工作方式非常节省实践并且报告也可复用。传统的,作者制作包含图形的报告。作者需要制作图形,保存为文件,然后copy并粘贴到最终的报告中,这个工作严重依赖人力,如果数据有变更,那么作者需要重复整个过程来更新图形。现在,再R Markdown的模板中,每个报告都包含制作图形,表格,数字所需的代码,作者可通过knit来自动完成更新。
  2. convert - convert 文件。rmarkdown包借助pandoc来将文件转变成新的格式,例如,你可以转变Rmd文件成HTML, PDF, 或Microsoft Word文件,你甚至可以转变成 HTML5 或 PDF 幻灯片,rmarkdown保持文本,代码结果与Rmd文件中的结构一致。这些转变能力能让你markdown编辑,并方便的改变格式,你可以将R代码放入knit,并以任何一种格式分享个其他人。

在实际应用中,作者经常同时用knit 和 convert文档。在本文,将用render 命令来对R markdwon文件执行 knitting 和 converting过程。

你可以认为的用render作用到R Markdown 文件, 如: rmarkdown::render(). 上面的代码渲染成HTML文件格式之后的结果如下图。

rmarkdown::render(),R markdown与RStudio深度合作

integrated into the RStudio IDE

,因为,你可以通过按键来完成以上命令。

R Markdown下载和文件创建

install.packages("rmarkdown")
library(rmarkdown)

下载完成后,打开RStudio,通过File -> New File -> R Markdown创建一个Rmd文件。

(也可以直接进行第二步,会自动进行安装)

R Markdown文件中的三个模块

The YAML Header

在所有RMarkdown文件中的头部都会有一个YAML头模块,利用---分隔开,包含标题,作者,日期以及文件类型。

---
title: "RMarkdown test"
author: Gremmie
date: 13/12/2022
output: html_document
---

Code Chunks

在YAML头模块后j是代码块,可以写自己的代码,相应的解释以及输出。代码块需要利用'''来进行分割,可以利用Run只跑这一段代码。这一部分的书写和R一样,只是要注意分块要根据功能来,不然会不美观。

```{r car}
summary(cars)
```

上述代码块的名字为car。除此之外,数据,文件,以及包如果要包含,也要写到代码中。

上述方法得到的最后结果代码块是会显出出来的,如果不想显示代码块,只显示结果的话可以利用echo。如果在给定变量的时候不想显示的话,可以利用include。隐藏警告可以利用warning。

```{r pressure, echo=FALSE}
plot(pressure)
```

knitr嵌入R代码

knitr包 能够兼容markdown语法,尤其包含执行R代码的能力。

渲染报告的过程中, knitr 将执行代码并将输出的结果展示。可以选择性的展示:之展示代码,只展示结果,代码与结果同时展示。

想嵌入R代码在报告中,用两行```将代码包围,在第一个``` {r}, 用于通知knitr下面的将是R代码,具体模板如下:

Here's some code
```{r}
dim(iris)
```

在渲染文档的时候, knitr将运行代码并将结果追加在代码之后,knitr提供格式和语法高亮展示R代码和代码运行结果。

作为上面R代码的markdown结果:

如果不想将结果results 追加到报告中,可以将eval = FALSE 参数加入大括号中,这样做的结果就是只把代码放入报告中,而不执行。

只将结果放入报告中,参数echo = FALSE 而不显示代码:

echo = FALSE同样实用于作图:

参数echo 和 eval不仅仅用于自定义code, 你可以通过 rmarkdown 和 knitr 进行学习。

行间代码

嵌入R代码到文本当中,在代码的两侧用点’来包围,如下:

Two plus two equals `r 2 + 2`.

knitr 将用代码结果代替R代码,如下图所示:

图片和表格插入

直接将plot和表格的名称写入Code Chunks即可。

其他插入表格的方式

kable

```{r kable}
library(knitr)
kable(cars, digits=2)
```

pander

```{r pander}
library(pander)
pander(cars,digits=2)
```

手动画表(一脸认真

| Plant | Temp. | Growth |
|:------|:-----:|-------:|
| A     | 20    | 0.65   |
| B     | 20    | 0.95   |
| C     | 20    | 0.15   |

文本格式

对于不同的文本格式,语法如下:

*斜体*
**粗体**
'code'
# 一级标题
## 二级标题
* 用点列举
1. 顺序列举
[Link](https://www.google.com)
$formula$

YAML 渲染参数

YAML header将决定如何展现你的 .Rmd file.文件,用两个 --- 包围,如下:

---
title: "Untitled"
author: "Gremmie"
date: "July 10, 2022"
output: html_document
---Some inline R code, `r 2 + 2`.

output: 决定最后的文件类型。

output: 选择其中一种类型的文件类型

  • html_document,
  • pdf_document,
  • word_document,

RStudio IDE knit更加方便的进行设置。

幻灯片:

可以将文档转换为幻灯片:

  • 参数设定output: ioslides_presentation 创建ioslides (HTML5)幻灯片
  • 参数设定output: beamer_presentation 创建 a beamer (PDF) 幻灯片

Note: 默认情况下RStudio编辑器中knitr没有默认选项,先在命令中修改输出类型,RStudio会输出类型加入默认选项菜单。

具体参数详见rmakdown.rstudio.com

总结

R Markdown 提供快速,可复用的报告方式,可以在markdwon中编写报告,并用knitr嵌入代码,可以随时更新代码,最终的文档可以转变成任何文件类型,

Introduction to interactive documents, 将教你如何将shiny的互动元素加入到markdown中。

[R语言]RMarkdown: 入门与操作相关推荐

  1. R循环有两个_量化金融R语言【入门五味】五味:函数

    本章是此系列的最后一讲,也是衔接从入门到中阶的重要一节.众所周知,函数,不管是数学上定义的那种还是编程里叙述的那样,都意在表达逻辑.几乎写每个程序都或多或少地内嵌着函数在里面,即函数是程序的灵魂,没有 ...

  2. R语言基础入门(全)

    R 是门语言,也是个环境.个人认为R有点像matlab. R自带多种统计学及数字分析功能.R的功能也可以通过安装包(Packages,用户撰写的功能)增强,个人感觉这个就是插件.因为S的血缘,R比其他 ...

  3. 视频教程-R语言从入门到精通系列之新手上路视频课程-其他

    R语言从入门到精通系列之新手上路视频课程 WOT峰会讲师,中国R语言大会讲师,数据分析师,8年以上数据挖掘建模工作实战经验,部分研究成果获国家专利,攥写<R语言与数据挖掘>.<数据先 ...

  4. r dataframe 转成向量_快速掌握R语言中类SQL数据库操作技巧

    在数据分析中,往往会遇到各种复杂的数据处理操作:分组.排序.过滤.转置.填充.移动.合并.分裂.去重.找重.填充等操作.这时候R语言就是一个很好的选择:R可以高效地.优雅地解决数据处理操作.(本章节为 ...

  5. R语言R-markdown实战示例、R-markdown、R-markdown生成结果汇报的HTML文件

    R语言R-markdown实战示例.R-markdown.R-markdown生成结果汇报的HTML文件 目录 R语言R-markdown实战示例.R-markdown.R-markdown生成结果汇 ...

  6. R语言中的管道操作——magrittr包

    R语言中的管道操作--magrittr包 一.项目环境 开发工具:RStudio R:3.5.2 相关包:magritter 二.数据准备以及问题阐述 这次要解决的问题是如何使用提取数据框中所有包含缺 ...

  7. R语言统计入门课程推荐——生物科学中的数据分析Data Analysis for the Life Sciences

    Data Analysis for the Life Sciences是哈佛大学PH525x系列课程--生物医学中的数据分析(PH525x series - Biomedical Data Scien ...

  8. [R语言] WGCNA入门教程

    文章目录 wgcna入门-雌性小鼠肝脏表达数据的网络分析:寻找与体重有关的模块 1 数据输入和清洗 1.1 加载基因表达数据 1.2 数据清洗 1.3 加载临床特征数据 2 建设表达网络与模块检测 2 ...

  9. 【0基础强力推荐】R语言快速入门

    文章目录 前言 一.R语言入门 1.基本语法 2.R包的安装 3.R包的使用 4.获取帮助 5.内置数据集 6.向量 7.向量索引 8.向量运算 9.矩阵 10.因子 11.数据框 12.缺失值 13 ...

  10. python和r语言哪个入门容易-R语言 vs Python对比:数据分析哪家强?

    什么是R语言? R语言,一种自由软件编程语言与操作环境,主要用于统计分析.绘图.数据挖掘.R本来是由来自新西兰奥克兰大学的罗斯·伊哈卡和罗伯特·杰特曼开发(也因此称为R),现在由"R开发核心 ...

最新文章

  1. Protocol Buffer技术详解(语言规范)
  2. Nacos自定义共享 Data Id 配置
  3. Spring与SpringMVC集成出现的问题
  4. 程序员面试金典 - 面试题 17.23. 最大黑方阵(DP)
  5. python去除图像光照不均匀_【转载】光照不均匀图像分割技巧
  6. A股开盘:深证区块链50指数涨0.02%,仁东控股跌停
  7. android 串口一直打开_STM32之串口DMA接收不定长数据
  8. 二叉排序树的插入 java_leetcode刷题笔记-701. 二叉搜索树中的插入操作(java实现)...
  9. Vue中解决移动端点击300毫秒延迟的问题
  10. 【企业架构】什么是 TOGAF? 企业架构方法论
  11. 彻底删除VMware虚拟机
  12. pythonppt_Python简介ppt
  13. IP地址冲突问题的解决方法
  14. 工业物联网盒子python_【工业4.0面面观】之十八:基于AWS的工业物联网应用案例...
  15. Matplotlib坐标轴格式
  16. 高精度极限电阻的测试技巧
  17. NOIP提高组 单峰
  18. codeBlock软件下面的框不见了,怎么办?
  19. 搭建一款属于你自己的图像识别系统
  20. 运维之道 | Git分布式版本控制系统安装、配置

热门文章

  1. ycf 梗_抖音三个汤勺放在筷子上是什么梗 抖音三个汤勺放在筷子上出处介绍[多图]...
  2. IOS UIImageView 汤姆猫实例
  3. N95滤材之父:滤材才是关键!道翰天琼认知智能机器人平台API接口大脑为您揭秘-2。
  4. 游戏程序员的核心竞争力是什么?
  5. 判定重大风险有哪几种_重大危险源判定
  6. 图灵交互设计丛书《简约至上.交互式设计四策略》
  7. 虚拟机安装Windows7系统(亲测超详细)
  8. 「米聊」突然复活,雷布斯真的是出其不意
  9. Python 随机切换桌面背景图
  10. vue开发企业微信应用-开发必读