2016年5月19日 @ 中国海洋大学

自动化报告

CV大法

为什么加班/熬夜

  • 数据错了一行
  • 想换个参数值
  • 等等

解决方案

  • 报告 = 代码 + 文字
  • 即:计算语言 + 自然语言

    老板叫我建一个回归模型。
    
    ```{r}
    fit <- lm(dist ~ speed, data = cars)
    b   <- coef(fit)
    plot(fit)
    ```
    
    呐,这个模型的回归系数是`r b[1]`。
  • 示例

自动化!自动化!自动化!

写文档!写文档!写文档!

knitr

  • R包一枚install.packages('knitr')
  • 文档类型
    • .Rnw (R + LaTeX)
    • .Rmd (R + Markdown)
    • 任意计算语言 + 任意自然语言
  • 编辑器
    • RStudio, LyX, …

资料

用法

if (!require("knitr")) install.packages("knitr")
library(knitr)
knit("your-document.Rmd")  # 编织文档

部分功能

  • 控制文本输出
  • 图片
  • 缓存
  • 其它语言

R Markdown

  • 同一份文档,多种输出格式
  • 背后是rmarkdown包

扩展

  • tufte
  • rticles
  • bookdown

目标

你苦兮兮看了无数论文,学了无数方法,收集了数据,跑了代码,做了分析,自动化报告只是希望你的临门一脚变得更简单。

RStudio产品

RStudio大力支持开源

  • RStudio集成开发环境
    • 桌面版
    • 服务器版
  • Shiny
  • Shiny服务器
  • 若干免费开源R包
    • ggplot2 / ggvis / dplyr / knitr / rmarkdown 等等

商业版本

  • RStudio专业版
    • 桌面版
    • 服务器版
  • Shiny服务器商业版

联系方式