1.简介
R Markdown 集成代码、输出结果和文本注释、可重复,支持多种输出形式,包括 PDF、Word、幻灯片等。
有的人关注的重点是代码运行的结果或结论,而不是代码本身,所以可重复性很重要。
2.基础
R markdown组成部分:YAML文件头、R代码段、文本。
输出/生成文件:
(1)rmarkdown::render("try.Rmd")
这里替换成自己的Rmd文件
(2)Knit 或快捷键ctrl+shift+K
3.markdown
主要的有:
- 文字格式
- 加粗
- 倾斜
- 行内代码
- 上标
- 标题
- 有序、无序列表
- 链接和图片
-
表格
4.Rmarkdown组成部分--代码段
(1)名称
代码段名称写在{ }里。名称和r之间要加空格
使用代码段生成的主要对象来命名
(2)选项
(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")
微信公众号生信星球同步更新我的文章
友情链接:
生信技能树公益视频合辑:学习顺序是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
网友评论