1 数据科学与编程语言 1
1.1 数据科学与数据分析 1
1.2 程序及其基本特征 2
1.3 算法 3
1.3.1 算法的表示方法 4
1.3.2 算法评价 7
1.4 数据结构 8
1.5 编程语言 9
1.5.1 Python语言 9
1.5.2 R语言 9
1.5.3 SAS语言 10
2 程序设计基础知识 11
2.1 结构化程序设计 12
2.2 面向对象的程序设计 13
2.2.1 抽象 13
2.2.2 基本概念 14
2.2.3 基本特性 17
3 Python系统配置与基础知识 19
3.1 Python系统配置 19
3.2 Python基础知识 24
3.2.1 帮助 25
3.2.2 标识符 25
3.2.3 行与缩进 26
3.2.4 变量与对象 27
3.2.5 数字与表达式 29
3.2.6 运算符 31
3.2.7 字符串 31
3.2.8 日期和时间 40
3.2.9 语法糖 42
3.2.10 魔术命令 43
4 数据结构与序列 45
4.1 列表 45
4.1.1 列表索引和切片 46
4.1.2 列表操作 47
4.1.3 内置列表函数 48
4.1.4 列表方法 49
4.2 元组 50
4.3 字典 51
4.4 集合 54
4.5 推导式 56
5 语句与控制流 59
5.1 顺序语句 59
5.2 条件语句 59
5.3 循环语句 61
5.3.1 while循环 61
5.3.2 for循环 62
5.3.3 循环控制 63
6 函数 67
6.1 函数的定义 67
6.2 函数的参数 68
6.3 全局变量与局部变量 70
6.4 匿名函数 71
6.5 递归和闭包 72
6.6 柯里化与反柯里化 74
6.7 常用的内置高阶函数 75
6.7.1 filter函数 75
6.7.2 map函数 75
6.7.3 reduce函数 76
7 迭代器、生成器与装饰器 77
7.1 迭代器 77
7.2 生成器 78
7.3 装饰器 81
8 类 85
8.1 声明类 85
8.2 方法 87
8.2.1 实例方法 87
8.2.2 类方法 89
8.2.3 静态方法 90
8.3 属性 91
8.3.1 实例属性和类属性 92
8.3.2 私有属性和公有属性 92
8.4 继承 94
8.4.1 隐式继承 94
8.4.2 显式覆盖 95
8.4.3 super继承 96
8.4.4 多态 98
8.4.5 多重继承 100
8.5 特性 100
9 多核并行 107
9.1 多进程 109
9.2 并行 113
10 异常捕获与容错处理 117
10.1 语法错误和异常 117
10.2 异常处理 120
10.2.1 触发异常 120
10.2.2 捕获异常 121
10.2.3 其他处理 122
11 模块和包 125
11.1 模块 125
11.2 包 127
11.2.1 包的组成与调用 127
11.2.2 常用数据分析工具库 128
12 文件I/O 133
13 numpy编程基础 137
13.1 关于numpy 137
13.2 向量 140
13.3 数组 142
13.3.1 数据类型与结构数组 143
13.3.2 索引与切片 145
13.3.3 数组的属性 150
13.3.4 数组排序 151
13.3.5 数组维度 153
13.3.6 数组组合 156
13.3.7 数组分拆 159
13.3.8 ufunc运算 160
13.4 矩阵 166
13.5 文件读写 167
14 pandas编程基础 169
14.1 关于pandas 169
14.2 pandas的数据结构 170
14.2.1 Series 170
14.2.2 DataFrame 174
14.3 pandas的数据操作 185
14.3.1 排序 185
14.3.2 排名 187
14.3.3 运算 189
14.3.4 函数应用与映射 190
14.3.5 分组 192
14.3.6 合并 192
14.3.7 分类数据 195
14.4 时间序列 196
14.4.1 创建时间序列 197
14.4.2 索引与切片 199
14.4.3 范围和偏移量 200
14.4.4 时间移动及运算 203
14.4.5 频率转换及重采样 205
14.5 面板数据与层次化索引 207
14.5.1 创建Panel 208
14.5.2 堆积DataFrame 209
14.5.3 层次化索引 209
14.6 缺失值处理 211
14.6.1 缺失数据的形式 211
14.6.2 缺失数据填充与清洗 213
14.6.3 缺失数据插值 216
15 图形与可视化的编程基础 217
15.1 matplotlib基本绘图 217
15.1.1 函数绘图 217
15.1.2 图形基本设置 224
15.1.3 面向对象绘图 231
15.1.4 绘图样式或风格 233
15.2 pandas基本绘图 234
15.3 基本统计图形 236
15.3.1 折线图 236
15.3.2 面积图 239
15.3.3 直方图 240
15.3.4 条形图 242
15.3.5 龙卷风图 247
15.3.6 饼图 247
15.3.7 阶梯图 249
15.3.8 盒须图 250
15.3.9 小提琴图 253
15.3.10 散点图 254
15.3.11 气泡图 257
15.3.12 六边形箱图 258
15.3.13 雷达坐标图 259
15.3.14 轮廓图 260
15.3.15 调和曲线图 261
15.3.16 等高线图 262
15.3.17 极坐标图 262
15.3.18 词云图 263
15.3.19 数据地图 267
15.4 其他绘图工具 269
参考文献 271