第1章 导论 1
1.1 数据的威力 1
1.2 什么是数据科学 1
1.3 激励假设:DataSciencester 2
1.3.1 寻找关键联系人 3
1.3.2 你可能知道的数据科学家 5
1.3.3 工资与工作年限 8
1.3.4 付费账户 10
1.3.5 兴趣主题 11
1.4 展望 12
第2章 Python速成 13
2.1 基础内容 13
2.1.1 Python获取 13
2.1.2 Python之禅 14
2.1.3 空白形式 14
2.1.4 模块 15
2.1.5 算法 16
2.1.6 函数 16
2.1.7 字符串 17
2.1.8 异常 18
2.1.9 列表 18
2.1.10 元组 19
2.1.11 字典 20
2.1.12 集合 22
2.1.13 控制流 23
2.1.14 真和假 24
2.2 进阶内容 25
2.2.1 排序 25
2.2.2 列表解析 25
2.2.3 生成器和迭代器 26
2.2.4 随机性 27
2.2.5 正则表达式 28
2.2.6 面向对象的编程 28
2.2.7 函数式工具 29
2.2.8 枚举 31
2.2.9 缩和参数拆分 31
2.2.10 args和kwargs 32
2.2.11 欢迎来到DataSciencester 33
2.3 延伸学习 33
第3章 可视化数据 34
3.1 matplotlib 34
3.2 条形图 36
3.3 线图 40
3.4 散点图 41
3.5 延伸学习 44
第4章 线性代数 45
4.1 向量 45
4.2 矩阵 49
4.3 延伸学习 51
第5章 统计学 53
5.1 描述单个数据集 53
5.1.1 中心倾向 55
5.1.2 离散度 56
5.2 相关 58
5.3 辛普森悖论 60
5.4 相关系数其他注意事项 61
5.5 相关和因果 62
5.6 延伸学习 63
第6章 概率 64
6.1 不独立和独立 64
6.2 条件概率 65
6.3 贝叶斯定理 66
6.4 随机变量 68
6.5 连续分布 68
6.6 正态分布 69
6.7 中心极限定理 72
6.8 延伸学习 74
第7章 假设与推断 75
7.1 统计假设检验 75
7.2 案例:掷硬币 75
7.3 置信区间 79
7.4 P-hacking 80
7.5 案例:运行A/B测试 81
7.6 贝叶斯推断 82
7.7 延伸学习 85
第8章 梯度下降 86
8.1 梯度下降的思想 86
8.2 估算梯度 87
8.3 使用梯度 90
8.4 选择正确步长 90
8.5 综合 91
8.6 随机梯度下降法 92
8.7 延伸学习 93
第9章 获取数据 94
9.1 stdin和stdout 94
9.2 读取文件 96
9.2.1 文本文件基础 96
9.2.2 限制的文件 97
9.3 网络抓取 99
9.3.1 HTML和解析方法 99
9.3.2 案例:关于数据的O’Reilly图书 101
9.4 使用API 105
9.4.1 JSON(和XML) 105
9.4.2 使用无验证的API 106
9.4.3 寻找API 107
9.5 案例:使用Twitter API 108
9.6 延伸学习 111
第10章 数据工作 112
10.1 探索你的数据 112
10.1.1 探索一维数据 112
10.1.2 二维数据 114
10.1.3 多维数据 116
10.2 清理与修改 117
10.3 数据处理 119
10.4 数据调整 122
10.5 降维 123
10.6 延伸学习 129
第11章 机器学习 130
11.1 建模 130
11.2 什么是机器学习 131
11.3 过拟合和欠拟合 131
11.4 正确性 134
11.5 偏倚-方差权衡 136
11.6 特征提取和选择 137
11.7 延伸学习 138
第12章 k近邻法 139
12.1 模型 139
12.2 案例:最喜欢的编程语言 141
12.3 维数灾难 146
12.4 延伸学习 151
第13章 朴素贝叶斯算法 152
13.1 一个简易的垃圾邮件过滤器 152
13.2 一个复杂的垃圾邮件过滤器 153
13.3 算法的实现 154
13.4 测试模型 156
13.5 延伸学习 158
第14章 简单线性回归 159
14.1 模型 159
14.2 利用梯度下降法 162
14.3 最大似然估计 162
14.4 延伸学习 163
第15章 多重回归分析 164
15.1 模型 164
15.2 最小二乘模型的进一步假设 165
15.3 拟合模型 166
15.4 解释模型 167
15.5 拟合优度 167
15.6 题外话:Bootstrap 168
15.7 回归系数的标准误差 169
15.8 正则化 170
15.9 延伸学习 172
第16章 逻辑回归 173
16.1 问题 173
16.2 Logistic函数 176
16.3 应用模型 178
16.4 拟合优度 179
16.5 支持向量机 180
16.6 延伸学习 184
第17章 决策树 185
17.1 什么是决策树 185
17.2 熵 187
17.3 分割之熵 189
17.4 创建决策树 190
17.5 综合运用 192
17.6 随机森林 194
17.7 延伸学习 195
第18章 神经网络 196
18.1 感知器 196
18.2 前馈神经网络 198
18.3 反向传播 201
18.4 实例:战胜CAPTCHA 202
18.5 延伸学习 206
第19章 聚类分析 208
19.1 原理 208
19.2 模型 209
19.3 示例:聚会 210
19.4 选择聚类数目k 213
19.5 示例:对色彩进行聚类 214
19.6 自下而上的分层聚类 216
19.7 延伸学习 221
第20章 自然语言处理 222
20.1 词云 222
20.2 n-grams模型 224
20.3 语法 227
20.4 题外话:吉布斯采样 229
20.5 主题建模 231
20.6 延伸学习 236
第21章 网络分析 237
21.1 中介中心度 237
21.2 特征向量中心度 242
21.2.1 矩阵乘法 242
21.2.2 中心度 244
21.3 有向图与PageRank 246
21.4 延伸学习 248
第22章 推荐系统 249
22.1 手工甄筛 250
22.2 推荐流行事物 250
22.3 基于用户的协同过滤方法 251
22.4 基于物品的协同过滤算法 254
22.5 延伸学习 256
第23章 数据库与SQL 257
23.1 CREATE TABLE与INSERT 257
23.2 UPDATE 259
23.3 DELETE 260
23.4 SELECT 260
23.5 GROUP BY 262
23.6 ORDER BY 264
23.7 JOIN 264
23.8 子查询 267
23.9 索引 267
23.10 查询优化 268
23.11 NoSQL 268
23.12 延伸学习 269
第24章 MapReduce 270
24.1 案例:单词计数 270
24.2 为什么是MapReduce 272
24.3 更加一般化的MapReduce 272
24.4 案例:分析状态更新 273
24.5 案例:矩阵计算 275
24.6 题外话:组合器 276
24.7 延伸学习 277
第25章 数据科学前瞻 278
25.1 IPython 278
25.2 数学 279
25.3 不从零开始 279
25.3.1 NumPy 279
25.3.2 pandas 280
25.3.3 scikit-learn 280
25.3.4 可视化 280
25.3.5 R 281
25.4 寻找数据 281
25.5 从事数据科学 281
25.5.1 Hacker News 282
25.5.2 消防车 282
25.5.3 T恤 282
25.5.4 你呢? 283
作者简介 284
关于封面 284