R Markdown 语法新手指南
你可能已经了解过轻量级标记语言 Markdown。如果你是第一次接触这个概念,请参考我们的 Markdown 指南。概括来讲,它是一种用于创建纯文本文档的简单又高效的语言。
然而,Markdown 在制作详细的报告或技术文件方面可能还不够完善。
受益于 knitr 和 Pandoc 等软件包,交互式文件格式 R Markdown 早在 2014 年就出现了。它将纯文本与内嵌的 R 代码相结合,可以制作动态文件。
你可以使用 各种 IDE 和扩展来创建 R Markdown 文档,官方 IDE 为 RStudio。因此,在这篇文章中,我们将重点介绍使用 RStudio 学习 R Markdown 语法。
?(假如你没有了解过,)R 编程语言 是一种用于统计计算、图形表示和报告的语言。
配置 RStudio
通过合适的配置,你可以很轻松地用 RStudio 来编写 R Markdown。只需要安装一个软件包,就已经完成了大部分的工作!
安装 RStudio 后,在 “ 工具 ” 菜单中选择 “ 安装软件包 ” 选项。
在弹出的对话框中,搜索 “rmarkdown” 并安装。
? 如果你想使用类似 Python 的代码块,你需要安装额外的包。当你想在你的文档中包含这些包时,RStudio 会提示你安装所需的包。
安装完成后,你可以通过选择 “ 文件 > 新建文件 > R Markdown” 来新建一个 R Markdown 文档。
之后会提示你添加一些关于文件的信息(文件的元数据),把这些填上就可以了。
或者你可以创建一个空的文件从零开始。
RMarkdown 语法
由于它是 “加强版的 Markdown”,因此大多数语法与 Markdown 是一样的。
它还有一些 Markdown 支持不完善的东西,比如表格、数学方程式、代码块等等。
下面是我们要介绍的内容的概括:
RMarkdown 块名 | 语法 |
---|---|
标题 | # 一级标题``## 二级标题``### 三级标题``一级标题``=======``二级标题``------- |
着重 | *斜体*``_斜体_``**加粗**``__加粗__ |
列表 | 无序列表:* 列表项``* 列表项``+ 子项``+ 子项 有序列表:1. 列表项``2. 列表项``+ 子项``+ 子项 |
代码块 | 普通代码块:这里写代码 R 代码块:````{r}R 代码``````你也可以用其他的语言`行内 `代码 |
链接 | 普通链接:粘贴 URL带标题的链接:[显示的文本](URL_地址) 跳转到锚点: [显示的文本](#锚点) |
表格 | ` |
方程式 | 行内方程式 $Equations$ 展示方程式: $$Equations$$ |
图片 | 无标题: ![](图片链接) 有标题:![可选标题](图片地址) |
引用块 | > 输入你引用的内容 |
其他 | 上角标:文本内容^上角标^ 章或页水平分割线========= 或 ---------- 行尾输入两个以上空格,即可添加人工行分割 |
YAML 头
在一个 R Markdown 文档的顶部,有一个 YAML 头,被两行 ---
包围。这个块定义了文档的最终样式,通常包含一个标题、作者、日期和你想输出的文件类型。
支持的文件格式有三种:HTML、PDF 和 Word。
1 |
|
这可以在 RStudio 中设置新文件时添加,如上节所示。
标题
在 R Markdown 中,有两种方法指定标题。我们可以使用 #
字符来表示不同级别的标题,比如:
1 |
|
也可以用 =
和 -
分别表示一级和二级标题。
1 |
|
列表
有两种列表,一种是无序列表,用点句符来表示:
1 |
|
另一种是有序列表,用数字来排序:
1 |
|
段落中的文本格式
格式化文本有几种方式。
你可以使用斜体或加粗来着重表示文本:
- 斜体:在文本前后各输入一个星号或下划线
- 加粗:在文本前后各输入两个星号或下划线
1 |
|
? 你可以阅读我们的文章 Markdown 中怎么让内容变成加粗和斜体 来了解更多内容。
如果你想使用上角标,在想变成上角标的内容前后加上 ^
符号。
1 |
|
如果你想对文本内容加删除线,在文本前后加 ~~
符号。
1 |
|
添加代码块
内嵌代码是 R Markdown 最主要的设计目的。我们有几种添加代码的方式。
添加普通代码块
如果你想添加一个代码块来与其他的文本进行区分,可以使用下面的语法:
1 |
|
1 |
|
1 |
|
1 |
|
这里是 行内代码
1 |
|
1 |
|
[文本内容](URL 地址)
1 |
|
1 |
|
列表 | 列表 | 列表 |
---|---|---|
表格项 | 表格项 | 表格项 |
表格项 | 表格项 | 表格项 |
1 |
|
1 |
|
1 |
|
这里是普通文本内容。
这里是块引用
1 |
|
行内方程式:$Equation$
展示方程式:$$Equation$$
1 |
|
你可以在行尾添加两个以上的空格来添加人工行分割。
### R Markdown 非常有用(备忘录)
![](/data/attachment/album/202303/15/091233m62g6c6n763elx27.jpg)
>
> **[R Markdown 备忘录.pdf 下载文档](https://itsfoss.com/content/files/2023/02/R-Markdown-Cheat-Sheet.pdf)**
>
>
>
*? 你还知道其他关于 R Markdown 的内容吗?请在下面的评论区告诉我们。*
---
via: <https://itsfoss.com/r-markdown/>
作者:[Sreenath](https://itsfoss.com/author/sreenath/) 选题:[lkxed](https://github.com/lkxed/) 译者:[lxbwolf](https://github.com/lxbwolf) 校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出