第1 部分 基础知识...................1
第1 章 数据处理总论.......................... 2
1.1 数据处理的定义 ....................2
1.2 数据处理的意义 ...................3
1.3 数据处理基本工具 ..................3
第2 章 R 语言编程基础.................. 6
2.1 下载安装 ...................6
2.2 包的使用 ..................7
2.3 数据类型 .........................8
2.4 数据结构 ........................10
2.5 程序控制 ........................15
2.6 函数式编程 ....................17
第3 章 数据处理基本范式....................... 19
第2 部分 快速入门...................24
第4 章 base-r:基本数据处理................. 25
4.1 数据集及其基本探索 .....................25
4.2 基本范式实现 ................27
4.2.1 创建(read.csv/data.frame) ................................27
4.2.2 删除(rm) .........................28
4.2.3 检索(DF[i,j]) ...................28
4.2.4 插入(rbind/cbind) ........................31
4.2.5 排序(order) .....................33
4.2.6 过滤(DF[condition,]) ...................35
4.2.7 汇总(apply) .....................36
4.2.8 分组(aggregate) ...........................36
4.2.9 连接(merge) ....................37
第5 章 tidyverse 生态系统:简洁高效数据处理.................... 40
5.1 tidyverse 生态系统简介 ........................40
5.2 基本范式实现 ............................41
5.2.1 包的加载(p_load) ........................41
5.2.2 创建(read_csv/tibble) ..................42
5.2.3 删除(rm) .........................45
5.2.4 检索(select/slice) .........................46
5.2.5 插入(add/bind) ................50
5.2.6 排序(arrange) ..................54
5.2.7 过滤(filter) ......................56
5.2.8 汇总(summarise) .........................59
5.2.9 分组(group_by) ...........................61
5.2.10 连接(join) .....................63
5.3 高级处理工具 ................67
5.3.1 长宽数据变换(gather/spread) ..........................68
5.3.2 集合运算(intersect/union/setdiff) .....................70
5.3.3 窗口函数(rank/lead/lag/cum) ...........................74
5.3.4 连接数据库:对SQL 的支持(dbplyr) .........................81
5.3.5 巧妙写函数:变量的引用 ...............85
第3 部分 高级进阶...................93
第6 章 data.table:高速数据处理............... 94
6.1 data.table 简介 ...............94
6.2 基本范式实现 ................96
6.3 高级特性探索 ............................... 116
第7 章 sparklyr: 分布式数据处理.................................. 128
7.1 连接R 与Spark:sparklyr 包简介 ...............................128
7.2 基本操作指南 ...............................130
7.3 存储机制简介 ...............................135
7.4 分布式计算 ..................136
第4 部分 实战应用................. 139
第8 章 航班飞行数据演练..................... 140
8.1 nycflights13 数据集探索 ...........................140
8.2 flights14 数据集探索 ....................148
第9 章 测试..................... 155
第10 章 实用数据处理技巧..................... 157
10.1 数据存取 ....................157
10.1.1 令人头疼的编码格式(encoding) ..............................157
10.1.2 读写性能竞速赛(fst/feather & data.table/readr) ....................158
10.1.3 数据存取转换的瑞士军刀(rio) ...................162
10.2 并行计算(doParallel) .........................164
10.3 混合编程 ....................168
第11 章 实战案例:网络爬虫与文本挖掘............................. 173
11.1 网络爬取(rvest) .....................174
11.2 文本挖掘(tidytext).................177
第12 章 实战案例:数据塑型与可视化(ggplot2).....................180
12.1 数据准备 ....................181
12.2 柱状图(geom_bar) .................182
12.3 折线图(geom_line) ................183
12.4 饼图(ggpie) ............................184
12.5 一行代码实现一页多图(gridExtra) .......................186
第13 章 实战案例:机器学习.................. 193
13.1 机器学习概述 .............................193
13.2 为什么要做机器学习 .................193
13.3 如何入门机器学习 .....................194
13.4 数据处理与机器学习 .................195
13.5 案例分析:信贷风险预测模型构建 ...........................195
致谢..............................204