一、R markdown是什么?R markdown是Markdown文本规范的一种变体,允许文本中包含R代码及其生成的结果,相当于把文本和代码共同处理。在开发的过程中,如果你两要去维护一个主文件,它既包含用广可读的文档又包含...
目录
<a href="#%E4%B8%80%E3%80%81R%20markdown%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F">一、R markdown是什么?</a>
<a href="#%E4%BA%8C%E3%80%81%E5%AE%89%E8%A3%85R%20markdown">二、安装R markdown</a>
<a href="#%E4%B8%89%E3%80%81%E5%88%9B%E5%BB%BA%E7%AC%AC%E4%B8%80%E4%B8%AA%C2%A0R%20Markdown">三、创建第一个 R Markdown</a>
<a href="#%EF%BC%88%E4%B8%80%EF%BC%89%E5%88%9B%E5%BB%BAR%20markdown">(一)创建R markdown</a>
<a href="#%EF%BC%88%E4%BA%8C%EF%BC%89%E6%96%87%E6%9C%AC%E9%80%89%E6%8B%A9">(二)文本选择</a>
<a href="#%EF%BC%88%E4%B8%89%EF%BC%89%E6%96%87%E6%9C%AC%E5%86%85%E5%AE%B9%E8%A7%A3%E9%87%8A">(三)文本内容解释</a>
<a href="#%E5%9B%9B%E3%80%81R%20Markdown%20%E7%9A%84%E5%AF%BC%E5%87%BA">四、R Markdown 的导出</a>
<a href="#%EF%BC%88%E4%B8%80%EF%BC%89%E6%89%8B%E5%8A%A8%E5%AF%BC%E5%87%BA%EF%BC%9A">(一)手动导出:</a>
<a href="#%EF%BC%88%E4%BA%8C%EF%BC%89%E4%BB%A3%E7%A0%81%E5%AF%BC%E5%87%BA">(二)代码导出</a>
<a href="#%EF%BC%88%E4%B8%89%EF%BC%89%E5%AF%BC%E5%87%BA%E7%9A%84Word%E6%96%87%E6%A1%A3">(三)导出的Word文档</a>
<hr id="hr-toc">
R markdown是Markdown文本规范的一种变体,允许文本中包含R代码及其生成的结果,相当于把文本和代码共同处理。在开发的过程中,如果你两要去维护一个主文件,它既包含用广可读的文档又包含程序源代码。这时R markdown就能很好的帮助到你,R markdowrn支持的文件类型包括 Markdown、HTML 、LaTeX(生成PDF文件) 和 Word。
R markdown执行文档创建任务的搜索引擎是Knitr,这个可以自行去了解。
本章操作系统为:Windows10,R版本为:R-4.2.2,RStudio版本为:2022.12.0-353
本此安装完全是在RStudio中进行的,不过没有安装RStudio也可以单独安装R markdown,不过本文不做探讨。
在R Studio中任意创建一个脚本,输入下面的代码:
# 第一种方法:直接安装R工具包
install.packages('rmarkdown')
# 第二种方法:从github上安装
devtools::install_github('rstudio/rmarkdown')
# 以上两种方法,选其一,运行即可,最后加载数据库
library(rmarkdown)
如果需要导出PDF可以参考博主:<a class="link-info" href="https://blog.csdn.net/weixin_43843918/article/details/128060062?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167776672516800182745548%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=167776672516800182745548&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-128060062-null-null.142%5Ev73%5Einsert_down4,201%5Ev4%5Eadd_ask,239%5Ev2%5Einsert_chatgpt&utm_term=%E5%AE%89%E8%A3%85R%20markdowm&spm=1018.2226.3001.4187" title="一只小蛮腰">一只小蛮腰</a>,这里直接贴代码。
install.packages('tinytex')
tinytex::install_tinytex()
依次点击File -> New File -> R Markdown
然后如下图:
输入Title、Author以及默认的输出⽂件格式。
在新建的R Markdown⽂件⾥,主要包含三块内容:1.YAML;2.R Markdown⽂本;3.代码块。
1、YAML头部信息:
如上图中的红色部分,YAML 是一种用来表示数据的格式,R Markdown 文件可以使用 YAML 头信息来设置一些元数据,例如文档标题、作者、日期、输出格式、主题样式等。YAML 头信息通常被包含在 R Markdown 文件的开头,并用三个短横线(---)分隔。
2、R Markdown⽂本:
如上图中的黄色2、蓝色3、绿色4部分,R Markdown 文本是 R Markdown 文件的主要内容,可以包含各种文本组成部分,例如标题、段落、列表、代码块、引用、链接、图片等。R Markdown 文本可以使用 Markdown 语法以及一些扩展的语法来编辑,例如 LaTeX 数学公式、表格、注脚等。R Markdown 文本可以被编译成不同的输出格式,例如 HTML、PDF、Word 等。
其中,黄色2、蓝色3部分是R Markdown 中的代码块部分。
黄色2部分解释如下:
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
>
{r setup, include=FALSE} 表示这是一个 R 代码块,其中 setup 是该代码块的名称,可以自定义; knitr::opts_chunk$set(echo = TRUE) 是该代码块的内容,表示设置代码块中的代码是否显示。echo = TRUE 表示代码块中的代码会显示出来,include = FALSE 则表示该代码块不会在编译后的输出中出现。
这句话的作用是将后面的所有 R 代码块的参数 echo 设置为 TRUE,使得在编译后的输出中,所有 R 代码块的代码都会被显示出来。如果不设置这个参数,则默认情况下,代码块中的代码不会在输出中显示。
蓝色3部分解释如下:
这里就是R markdown的文本了,包括文本,代码块,插入图片等等等。。。。。
3、代码块:
代码块如黄色部分,也可以不使用(```)
解释一下绿色部分:
summary(cars)
>
这段代码是 R 语言中用于对 cars 数据集进行摘要分析的代码。cars 数据集是 R 语言内置的数据集之一,包含了一个停止距离和汽车速度之间的简单线性关系。
ummary() 是一个 R 语言中常用的函数,用于计算并返回一个向量、矩阵、数据框等对象的统计摘要信息。在这里,summary() 函数用于对 cars 数据集进行统计摘要分析,其输出结果包括:
Min.: 数据集中的最小值 1st Qu.: 数据集中第一个四分位数 Median: 数据集中位数 Mean: 数据集的平均值 3rd Qu.: 数据集中第三个四分位数 Max.: 数据集中的最大值
在 R 语言中,cars 数据集通常用于简单的回归分析和可视化。上述代码的执行结果会显示 cars 数据集的摘要分析结果。
# 四、R Markdown 的导出
## (一)手动导出:
如图,导出即可。
![](https://img-blog.csdnimg.cn/1f270e6306be41419495c49268ae20f3.png)
## (二)代码导出
使用render实现。
render("FileName.Rmd") render(input = "./save/path/FileName.Rmd", output_format = "html_document")
```
render函数主要包含下面两个参数:
input:指定需要导出的Rmd⽂件地址 output_format:指定需要导出的⽂件类型,同样⽀持pdf、word、html等多种⽂件格式。若未指定output_format格式,则输出Rmd⽂件中output指定的格式类型。
如下图:
以上为简单的R Markdown安装过程,如果错误,请大佬指正!!!
本站为非盈利网站,如果您喜欢这篇文章,欢迎支持我们继续运营!
本站主要用于日常笔记的记录和生活日志。本站不保证所有内容信息可靠!(大多数文章属于搬运!)如有版权问题,请联系我立即删除:“abcdsjx@126.com”。
QQ: 1164453243
邮箱: abcdsjx@126.com