B.2 R Markdown
得益于 R 和 Pandoc 的强大功能,你可以轻松地在 R Markdown 文档中进行计算,并将其转换为各种输出格式,包括 HTML/PDF/Word 文档、HTML5/Beamer 幻灯片、仪表板和网站等。一份 R Markdown 文档通常由 YAML 元数据(可选)和文档主体组成。我们在第 2 章中介绍了编写文档主体各个组件的语法,并将在本节详细解释 YAML 元数据。
R Markdown 的元数据可以写在文档的最开头,分别以三个短划线 ---
开头和结尾。YAML 元数据通常由冒号分隔的标签和值组成,例如:
对于字符类型的取值,当不包含特殊字符时,你可以省略引号,但如果希望它们被解析为字符类型,则使用引号更为安全。
除字符类型外,另一种常见类型是逻辑类型。yes
和 true
都表示 true,no
/false
都表示 false,例如:
元数据取值也可以是向量,并且有两种写入向量的方法。下面列出的两种方法是等价的
元数据取值也可以是键值对的列表,只需要将其额外缩进两个空格,例如:
忘记缩进是一个常见的错误。例如,下面的数据
实际上表示
而不是你期望的那样:
R Markdown 输出格式是在 YAML 元数据的 output
字段中指定的,你需要查阅 R 帮助页面以获得可以填写的选项,例如 ?rmarkdown::html_document
或 ?bookdown::gitbook
。YAML 中其它大多数字段的含义可以在 Pandoc 文档中找到。
rmarkdown 软件包提供了这些 R Markdown 输出格式:
beamer_presentation
context_document
github_document
html_document
ioslides_presentation
latex_document
md_document
odt_document
pdf_document
powerpoint_presentation
rtf_document
slidy_presentation
word_document
在其他 R 包中还支持了更多的输出格式,包括 bookdown、tufte、rticles、flexdashboard、revealjs 和 rmdformats等。