R Markdown,是谢益辉老师基于Markdown语法结合R语言特性开发出的一种文本语言格式,这种格式称为R Markdown格式,简称为Rmd格式, 相应的文件扩展名为.Rmd。

R的knitr和rmarkdown扩展包可以使得在R Markdown格式的源文件中插入R代码(也支持python等)在Pandoc的加持下,可以输出像HTML、docx、pdf等格式。

一个标准的Rmd文件中包含元数据(metadata)、正文内容和代码三种主要的模块。下面首先给大家讲讲基本的Markdown语法:


Markdown语法概览:

# 这是一级标题
## 这是二级标题
### 这是三级标题
#### 这是四级标题
##### 这是五级标题
###### 这是六级标题

**这是加粗的文字**
*这是倾斜的文字*`
***这是斜体加粗的文字***
~~这是加删除线的文字~~

>这是引用的内容

---这是分割线
***这也是分割线

![图片alt](图片地址)
[超链接名](超链接地址)

- 列表内容
+ 列表内容
* 列表内容

1.列表内容
2.列表内容
3.列表内容

表头|表头|表头
---|:--:|---:
内容|内容|内容
内容|内容|内容

`代码内容`
```
  代码...
  代码...
  代码...
```

注意:Markdown也支持内嵌HTML,可以更加丰富其展现形式。

下面一个R markdown的示例给大家演示报告生成:


---
title: "用R Markdown制作你的数据报告"
author: "陈浩"
date: "`r format(Sys.time(),'%d %B, %Y')`"
# 下面定制化的参数有很多可以参考谢益辉老师的教程
output: 
  html_document:
    toc: true                   #是否展示目录
    toc_float: true             #目录的形式,是否浮动
    df_print: paged             #表格的形式,paged创建可分页的表
description: "一个报告演示案例!"
---


*   R语言第一个版本开发于1976-1980,基于Fortran;
    于1980年移植到Unix, 并对外发布源代码。
    

# 段落1

这里是正文段落。
段落中仍可以利用一般的Markdown语法,
比如在两边用双星号表示**粗体加重**,
在用两边反单撇号表示代码,如`y <- sin(x)`。

>这是引用文本

- 序号 

- 序号 

# 段落2

下面是一个R代码段,有文字输出:
```{r}
set.seed(1)
x <- round(rnorm(10), 2)
print(x)
```

# 段落3
下面是一个R代码段,有图形输出:

```{r}
plot(iris)
```

# 段落4
下面是一个R代码段,
有富文本表格输出:

```{r echo=FALSE}
knitr::kable(head(iris), format = "simple")

```

在文字段落内部也可以有代码,
比如,x的第一个元素值为`r x[1]`。

一般我们用Rstudio做R markdown报告开发的编辑器,编辑完成后点击Preview生成预览报告。

关于R markdown的一些文档书籍:

参考资料:

1.https://bookdown.org/yihui/rmarkdown/

2.https://www.math.pku.edu.cn/teachers/lidf/docs/Rbook/html/_Rbook/rmarkdown.html

3.https://github.com/rstudio/rmarkdown-book