用R和 Markdown创建动态报告
来源:互联网 发布:淘宝头条 编辑:程序博客网 时间:2024/06/09 23:45
用R和 Markdown创建动态报告
你会使用rmarkdown包来从Markdown格式和R代码中创建文档。在处理文档的 时候,运行R代码,格式化输出,然后把输出嵌入到后生成的文档当中。你可以用这个方式来 生成 HTML、Word或PDF文件,步骤如下。
(1) 安装rmarkdown包(install.packages("rmarkdown"))。这个步骤会把很多其他的 包也安装进来,包括knitr包。如果你在使用新版RStudio,你可以跳过这一步,因为你已经有 必要的包了。
(2) 安装xtable包(install.packages("xtable"))。这个包中的xtable()函数用美观 的方式格式化报告中的数据框和矩阵。xtable()也可以对lm()、glm()、aov()、table()、 ts()和coxph()返回的对象进行格式化。载入这个包后,可以用methods(xtable)来查看它能 格式化的所有对象列表。
(3) 安装Pandoc(http://johnmacfarlane.net/pandoc/index.html)。Pandoc是一个支持Windows、 Mac OS X和Linux的免费软件。它可以把一种标记格式的文件转换成另外一种标记格式。同样, RStudio用户可以跳过这一步。
(4) 如果想生成PDF文档,需要安装一套LaTeX编译器。一套LaTeX编译器能够把一个LaTeX 文件转换成一个高质量排版的PDF文档。我推荐Windows用户安装 MiKTeX(http://miktex.org/), Mac用户安装 MacTeX(https://tug.org/mactex/),Linux用户安装TeX Live(https://tug.org/texlive/)。
软件都安装好之后,就可以进行下一步了。 为了用Markdown语法把R的输出(值、表格、图形)合并到一个文档中,你需要首先创建一 个包含以下内容的文本文档:
报告文字
Markdown语法
R代码块(用分隔符包围起来的R代码)
按照惯例,这种文本文件使用扩展名.Rmd
Markdown 语法的简要规则
标题
# 一级标题
## 二级标题
... ...
###### 六级标题
以此类推,总共六级标题,建议在# 号后加一个空格,这是最标准的 Markdown 语法。
换行和段落
文字之间一行或多行的空白行:把文字分割成段落
行尾两个或多个空格:添加一个换行符
列表
无序列表:文字前加上 -
或 *
* item 1
* item 2
有序列表:
1. item 1
2. item 2
符号要和文字之间加上一个字符的空格。
引用
> 例如这样
图片与链接
[Google](http://google.com) :超链接
![My text](path to image) :图片
粗体与斜体
**这里是粗体**
* 这里是斜体*
分割线:分割线的语法只需要另起一行,连续输入三个星号 ***
即可。
表格
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
生成的表格如下:
R代码框
```{r options}
R代码
```
阅读全文