1 Star 0 Fork 0

王诗翔 / Workshop

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
第二期.md 4.56 KB
一键复制 编辑 原始数据 按行查看 历史
wt12318 提交于 2021-06-20 17:06 . update

第二期 程序控制与数据操作流

查看代码

推荐图书

其他资料

R 编程基础

内容:

  • 基础语法
  • 控制与循环结构
  • 函数与包
  • 数据读取和保存
    • read.*write.*
    • loadsave
    • readRDSsaveRDS

数据操作流程

  • 放本小抄在身边,随时查阅

Tidyverse

  • https://github.com/tidyverse/

  • 数据导入 read_*

  • 管道 %>%

    • x %>% f(y) > f(x, y)
  • 筛选

    • 行筛选 slice, filter, sample_n, sample_frac, top_n, distinct
    • 列筛选 select
      • contains
      • num_range
      • starts_with
      • ends_with
      • one_of
      • matches
    • 排序 arrange
  • 行列增加/更新

    • mutate, transmute
    • mutate_
    • add_row
    • add_column
    • rename
    • rownames_to_column, column_to_rowname
    • 向量化函数
      • 基本的数学和比较逻辑运算符 + - * / > < ==
      • 偏移 dplyr:: lag lead
      • 聚合 dplyr:: cumall cumany cummax cummean cummin cumprod cumsum
      • 排序 dplyr:: cume_dist dense_rank min_rank ntile percent_rank row_number
      • 其他 dplyr:: between case_when coalesce if_else na_if pmax pmin recode recode_factor
  • 汇总

    • 简单汇总
      • count
      • summarize
    • 分组汇总 group_by, ungroup
    • 汇总函数
      • 计数 dplyr:: n n_distinct base::sum(!is.na())
      • 位置 mean, meadian
      • 逻辑值 mean, sum
      • 位置 dplyr:: first last nth
      • 排序 quantile min max
      • 分布 IQR mad sd var
  • 合并

    • bind_rows
    • bind_cols
    • semi_join
    • anti_join
    • left_join, right_join, inner_join, full_join
    • intersect
    • setdiff
    • union
    • setequal 辅助查看两个数据集是否相同(不管行序)
  • 变异动词 (_at, _if, _all)

    • filter_*
    • select_*
    • summarize_*
    • arrange_*
    • ...
  • 字符处理

    • substr
    • stringr包与正则表达式略微复杂,可以单独讲一次
  • 转换 tidyr

    • Tidy 数据格式

      image-20200527160518635

      Following three rules makes a dataset tidy: variables are in columns, observations are in rows, and values are in cells.

      • tibble
      • tribble, enframe
      • as_tibble, is_tibble
    • 缺失值

      • drop_na
      • fill
      • replace_na
    • 长转宽 pivot_wider, spread

      image-20200527160608769

    • 宽转长 pivot_longer, gather

      Pivoting table4 into a longer, tidy form.

    • 拓展表格

      • expand
      • complete
    • 分割和连接

      • separate
      • separate_rows
      • unite
  • 数据导出

    • write_*

data.table 与 base

  • 数据导入 fread
  • 数据导出 fwrite
  • data.table 语法 dt[i, j, by]
  • 数据过滤与合并等操作与 R 基础语法一致,也可以使用 tidyverse 处理
    • 整数索引
    • 逻辑索引
    • 命名索引
  • 进一步的学习参考小抄、文档和《R 语言编程指南》

本期未讲述的内容???

  • 正则表达式与字符串处理:basestringr
  • 列表处理与迭代计算: purrr
  • 统计建模: statsbroom
  • 绘图:graphicsggplot2
  • 函数编程:apply家族和purrr

后几期主题

开发:

  • devtools
  • usethis
  • testthat
  • roxygen2 与 roxytest
1
https://gitee.com/ShixiangWang/Workshop.git
git@gitee.com:ShixiangWang/Workshop.git
ShixiangWang
Workshop
Workshop
master

搜索帮助