美文网首页数据-R语言-图表-决策-Linux-Python
小洁详解《R数据科学》--第20章 R Markdown

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

作者: 小洁忘了怎么分身 | 来源:发表于2018-11-22 19:52 被阅读171次

    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

    相关文章

      网友评论

        本文标题:小洁详解《R数据科学》--第20章 R Markdown

        本文链接:https://www.haomeiwen.com/subject/yeplqqtx.html