—
title: “Rmarkdown进阶”
author: “Yi”
date: “2020/7/14”
output: html_document
—
“`{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE, cache = TRUE)
library(tidyverse) #若用到其中的函数,需要加载
beautify <- function(x) format(x, digits = 2, big.mark = ',')
```
## Markdown格式
### 1.字体格式化
*斜体* _斜体_
**加粗** __加粗__
***粗斜体*** ___粗斜体___ **_粗斜体_**
~~删除~~
上标^[2]^
下标~3~
### 2.目录分级与显示列表
# 第一级
## 第二级
### 第三级
#### 第四级
##### 第五级
###### 第六级
注:最高到六级
#### 有序列表
2. 有序列表
1. 有序列表
1. 有序列表
5. 有序列表
1. 有序列表
有序列表取决于第一个编号,后面自增,不间断
##### 如何实现间断
-----
1. 有序列表
1. 有序列表
1. 有序列表
5. 有序列表
1. 有序列表
分段落间隔
1. 有序列表
1. 有序列表
1. 有序列表
5. 有序列表
1. 有序列表
-----
1. 有序列表
1. 有序列表
1. 有序列表
5. 有序列表
1. 有序列表
### 目录间隔
1. 有序列表
1. 有序列表
1. 有序列表
5. 有序列表
1. 有序列表
-----
1. 有序列表
1. 有序列表
1. 有序列表
5. 有序列表
1. 有序列表
- 无序列表间隔
1. 有序列表
1. 有序列表
1. 有序列表
5. 有序列表
1. 有序列表
----
#### 无序列表
+ 无序列表
+ 无序列表
+ 无序列表
- 无序列表
- 无序列表
- 无序列表
* 无序列表
* 无序列表
* 无序列表
----
#### 列表组合使用
1. 第一
+ 2-1(要超过上级标题内容第一个字,按两个Tab键即可)
+ 2-2
2. 第二
+ 2-1
+ 2-2
### 3.换行与分段
- **行后两个空格换行**
第一行
第二行(在一个段落内)
- **句末不敲空格间隔一行**
第一行(与前面不在一个段落内)
第二行
### 4. 分割线
3个以上的-或*
---
***
### 5. 引用
>**大学《礼记》**
大学之道,在明明德,在亲民,在止于至善。
大学之道,在明明德,在亲民,在止于至善。
大学之道,在明明德,在亲民,在止于至善。
大学之道,在明明德,在亲民,在止于至善。
### 6. 插入超链接或图片
– http://www.neu.edu.cn
–
– 请通过[百度](http://www.baidu.com)进行内容搜索。
![梦境](c:/Users/Pingtao/Desktop/Rmarkdown/pic.jpg)
– markdown兼容html格式
梦幻之色
梦幻之色
### 7. Latex公式的使用
– 正态分布
$$f(x,\mu,\sigma^2) = \frac{1}{\sigma\sqrt{2\pi}} e^{-\frac{1}{2}\left(\frac{x -\mu}{\sigma}\right)^2}\tag{1}$$
式中,$\mu$为均值,$\sigma^2$为样本方差。
– 更复杂的怎么写?
$${\begin{array}{*{20}{l}}
{{\begin{array}{*{20}{l}}
{\frac{{1}}{{1-x}}=\mathop{ \sum }\limits_{{n=0}}^{{ \infty }}\mathop{{x}}\nolimits^{{n}}}&{ \left( {-1 < x < 1} \right) }\\
{e=\mathop{ \sum }\limits_{{n=0}}^{{ \infty }}\frac{{1}}{{n!}}\mathop{{x}}\nolimits^{{n}}}&{ \left( {- \infty < x < \infty } \right) }\\
{ \text{sin} x=\mathop{ \sum }\limits_{{k=0}}^{{ \infty }}\frac{{\mathop{{ \left( {-1} \right) }}\nolimits^{{k}}}}{{ \left( {2k+1} \left) !\right. \right. }}\mathop{{x}}\nolimits^{{2k+1}}}&{ \left( {- \infty < x < \infty } \right) }\\
{ \text{cos} x=\mathop{ \sum }\limits_{{k=0}}^{{ \infty }}\frac{{\mathop{{ \left( {-1} \right) }}\nolimits^{{k}}}}{{ \left( {2k} \left) !\right. \right. }}\mathop{{x}}\nolimits^{{2k}}}&{ \left( {- \infty < x < \infty } \right) }\\
{\frac{{1}}{{1+x}}=\mathop{ \sum }\limits_{{n=0}}^{{ \infty }}{\mathop{{ \left( {-1} \right) }}\nolimits^{{n}}}\mathop{{x}}\nolimits^{{n}}}&{ \left( {-1 < x < 1} \right) }\\
{ \text{ln} { \left( {1+x} \right) }=\mathop{ \sum }\limits_{{n=0}}^{{ \infty }}\frac{{\mathop{{ \left( {-1} \right) }}\nolimits^{{n}}}}{{n+1}}\mathop{{x}}\nolimits^{{n+1}}}&{ \left( {-1 < x \le 1} \right) }\\
{\mathop{{a}}\nolimits^{{x}}=\mathop{ \sum }\limits_{{n=0}}^{{ \infty }}\frac{{\mathop{{ \left( { \text{ln} a} \right) }}\nolimits^{{n}}}}{{n!}}\mathop{{x}}\nolimits^{{n}}}&{ \left( {- \infty < x < \infty } \right) }\\
{\frac{{1}}{{1+\mathop{{x}}\nolimits^{{2}}}}=\mathop{ \sum }\limits_{{n=0}}^{{ \infty }}{\mathop{{ \left( {-1} \right) }}\nolimits^{{n}}}\mathop{{x}}\nolimits^{{2n}}}&{ \left( {-1 < x < 1} \right) }
\end{array}}}\\
{{\mathop{{e}}\nolimits^{{ix}}\begin{array}{*{20}{l}}
{=1+ix+\frac{{1}}{{2!}}{\mathop{{ \left( {ix} \right) }}\nolimits^{{2}}}+\frac{{1}}{{3!}}{\mathop{{ \left( {ix} \right) }}\nolimits^{{3}}}+ \cdots +\frac{{1}}{{n!}}{\mathop{{ \left( {ix} \right) }}\nolimits^{{n}}}+ \cdots }\\
{=1+ix-\frac{{1}}{{2!}}{\mathop{{x}}\nolimits^{{2}}}-\frac{{1}}{{3!}}{\mathop{{ix}}\nolimits^{{3}}}+\frac{{1}}{{4!}}{\mathop{{x}}\nolimits^{{4}}}+\frac{{1}}{{5!}}{\mathop{{ix}}\nolimits^{{5}}}- \cdots }\\
{={ \left( {1-\frac{{1}}{{2!}}{\mathop{{x}}\nolimits^{{2}}}+\frac{{1}}{{4!}}{\mathop{{x}}\nolimits^{{4}}}- \cdots } \left) +i{ \left( {x-\frac{{1}}{{3!}}\mathop{{x}}\nolimits^{{3}}+\frac{{1}}{{5!}}\mathop{{x}}\nolimits^{{5}}-} \cdots \right) }\right. \right. }}\\
{= \text{cos} x+ \text{sin} x}
\end{array}}}
\end{array}}$$
### 8. 在段内插入R代码
- 经过计算,1到100的平均值为`r mean(1:10) #这是注释,html中不会显示`。
- `r 1/3`的小数位太多怎么办?用format函数,`r format(1/3, digits = 2)`,或者在全局设置setup中定义一个通用的美化函数beautify,使用一下,发生十个随机小数`r beautify(runif(10))`,发生一个较大的随机整数`r beautify(sample(1000000:10000000,1))`
### 9. 显示表格
以diamonds数据集为例
- 正常输出
```{r}
diamonds %>%
slice_head(n = 50)
“`
– kable方式
“`{r}
diamonds %>%
slice_head(n = 50) %>%
knitr::kable(caption = ‘钻石采样’)
“`
– DT::datatable方式
“`{r}
diamonds %>%
slice_head(n = 50) %>%
DT::datatable(caption = ‘钻石数据集’)
“`
### 10. 不执行的代码块行内代码
“`
diamonds %>%
slice_head(n = 50) %>%
DT::datatable(caption = ‘钻石数据集’)
“`
– 经过计算,1到100的平均值为`mean(1:10) #这是注释,会显示`。
### 11. 修改格式
– 编辑css文件
借助“查看器”功能
– 嵌入方式
– 外联方式
1. 将``加入到文档里的任意位置
``
2. 脱离Rstudio,直接改Html,将``放到前(注意让Rmarkdown中的相同语句先不运行)