小洁详解《R数据科学》--第20章 R Markdown

1.简介

R Markdown 集成代码、输出结果和文本注释、可重复,支持多种输出形式,包括 PDF、Word、幻灯片等。
有的人关注的重点是代码运行的结果或结论,而不是代码本身,所以可重复性很重要。

2.基础

R markdown组成部分:YAML文件头、R代码段、文本。
输出/生成文件:
(1)rmarkdown::render("try.Rmd") 这里替换成自己的Rmd文件
(2)Knit 或快捷键ctrl+shift+K

3.markdown

主要的有:

  • 文字格式
    • 加粗
    • 倾斜
    • 行内代码
    • 上标
  • 标题
  • 有序、无序列表
  • 链接和图片
  • 表格


    小洁详解《R数据科学》--第20章 R Markdown_第1张图片

    小洁详解《R数据科学》--第20章 R Markdown_第2张图片

4.Rmarkdown组成部分--代码段

(1)名称

代码段名称写在{ }里。名称和r之间要加空格
使用代码段生成的主要对象来命名

(2)选项

小洁详解《R数据科学》--第20章 R Markdown_第3张图片

(3)将tibble输出显示为表格:

knitr::kable(
mtcars[1:5, ],
caption = "A knitr kable."
)

(4)缓存

适用情况:每次生成文档时都是从头开始,有的代码段运行时间太长,没次重新生成都很慢。
解决方法:①使用缓存(cache=TRUE),代码不变则使用缓存,代码改变则重新运行。缺点是只检查代码而不检查依赖关系。
②随依赖的变量变化 cached = TRUE, dependson = "df"
③随外部文件变化 cache.extra = file.info("x.csv")
这个选项只要原文件发生了改变,缓存就会失效。
④清理缓存knitr::clean_cache()

(5)全局设置

knitr::opts_chunk$set() 括号里填写上面表格中的选项。

(6)行内代码

这里的大概意思就是说:行内的一些数字可以显示为代码运行结果,设置小数点位数、大数字每三位加一个逗号,更加易读。
comma <- function(x) format(x, digits = 2, big.mark = ",")
--把这行代码加入到setup代码块里,只运行不显示
然后行内代码写作`r comma(nrow(diamonds))`

5.排错

在引起问题的代码段中设置 error=TRUE,然后排查变量和代码是否有问题

6.R Markdown组成部分--文件头

文档参数

让Rmarkdown具有更好的重复性,下次用到只需替换关键的变量,开头设置param :my_class : "suv",代码中写的则是 params$my_class
小本本记下来:
批量生成多份同一模板不同参数的文件。

rmarkdown::render(
"fuel-economy.Rmd",
params = list(my_class = "suv")
)
reports <- tibble(
class = unique(mpg$class),
filename = stringr::str_c("fuel-economy-", class, ".html"),
params = purrr::map(class, ~ list(my_class = .))
)
report
reports %>%
select(output_file = filename, params) %>%
purrr::pwalk(rmarkdown::render, input = "fuel-economy.Rmd")
小洁详解《R数据科学》--第20章 R Markdown_第4张图片
微信公众号生信星球同步更新我的文章

友情链接:
生信技能树公益视频合辑:学习顺序是linux,r,软件安装,geo,小技巧,ngs组学!
B站链接:https://m.bilibili.com/space/338686099
YouTube链接:https://m.youtube.com/channel/UC67sImqK7V8tSWHMG8azIVA/playlists
生信工程师入门最佳指南:https://mp.weixin.qq.com/s/vaX4ttaLIa19MefD86WfUA
学徒培养:https://mp.weixin.qq.com/s/3jw3_PgZXYd7FomxEMxFmw
资料大全:https://mp.weixin.qq.com/s/QcES9u1vYh-l6LMXPgJIlA

你可能感兴趣的:(小洁详解《R数据科学》--第20章 R Markdown)