第1章 Python环境搭建与使用 1
1.1 Anaconda的安装和使用 1
1.1.1 Anaconda的安装 1
1.1.2 Anaconda的使用 3
1.2 Jupyter Notebook的使用 5
1.2.1 更改工作空间 5
1.2.2 界面介绍与使用 7
第2章 NumPy入门和实战 9
2.1 ndarray多维数组 9
2.1.1 创建ndarray数组 9
2.1.2 ndarray对象属性 12
2.1.3 ndarray数据类型 13
2.1.4 数组变换 15
2.1.5 NumPy的随机数函数 18
2.2 数组的索引和切片 20
2.2.1 数组的索引 21
2.2.2 数组的切片 23
2.2.3 布尔型索引 24
2.2.4 花式索引 26
2.3 数组的运算 26
2.3.1 数组和标量间的运算 26
2.3.2 通用函数 27
2.3.3 条件逻辑运算 28
2.3.4 统计运算 30
2.3.5 布尔型数组运算 31
2.3.6 排序 32
2.3.7 集合运算 33
2.3.8 线性代数 34
2.4 数组的存取 34
2.4.1 数组的存储 35
2.4.2 数组的读取 35
2.5 综合示例——图像变换 35
第3章 pandas入门和实战 38
3.1 pandas数据结构 38
3.1.1 创建Series数据 38
3.1.2 创建DataFrame数据 40
3.1.3 索引对象 43
3.2 pandas索引操作 44
3.2.1 重新索引 45
3.2.2 更换索引 46
3.2.3 索引和选取 48
3.2.4 操作行和列 52
3.3 pandas数据运算 53
3.3.1 算术运算 54
3.3.2 函数应用和映射 55
3.3.3 排序 56
3.3.4 汇总与统计 57
3.3.5 唯一值和值计数 58
3.4 层次化索引 59
3.4.1 层次化索引简介 59
3.4.2 重排分级顺序 60
3.4.3 汇总统计 61
3.5 pandas可视化 61
3.5.1 线形图 61
3.5.2 柱状图 63
3.5.3 直方图和密度图 66
3.5.4 散点图 67
3.6 综合示例——小费数据集 68
3.6.1 数据分析流程 68
3.6.2 数据来源 68
3.6.3 定义问题 69
3.6.4 数据清洗 69
3.6.5 数据探索 70
第4章 外部数据的读取与存储 73
4.1 文本数据的读取与存储 73
4.1.1 CSV文件的读取 73
4.1.2 TXT文件的读取 80
4.1.3 文本数据的存储 81
4.2 JSON和Excel数据的读取与存储 82
4.2.1 JSON数据的读取与存储 82
4.2.2 Excel数据的读取与存储 85
4.3 数据库的读取与存储 87
4.3.1 连接数据库 87
4.3.2 读取数据库 88
4.3.3 存储数据库 90
4.4 Web数据的读取 90
4.4.1 读取HTML表格 90
4.4.2 网络爬虫 92
第5章 数据清洗与整理 95
5.1 数据清洗 95
5.1.1 处理缺失值 95
5.1.2 移除重复数据 99
5.1.3 替换值 101
5.1.4 利用函数或映射进行数据转换 101
5.1.5 检测异常值 102
5.1.6 虚拟变量 103
5.2 数据合并和重塑 104
5.2.1 merge合并 105
5.2.2 concat连接 110
5.2.3 combine_first合并 113
5.2.4 数据重塑 114
5.3 字符串处理 116
5.3.1 字符串方法 117
5.3.2 正则表达式 118
5.4 综合示例——Iris数据集 118
5.4.1 数据来源 118
5.4.2 定义问题 119
5.4.3 数据清洗 119
5.4.4 数据探索 123
第6章 数据分组与聚合 125
6.1 数据分组 125
6.1.1 GroupBy简介 125
6.1.2 按列名分组 128
6.1.3 按列表或元组分组 130
6.1.4 按字典分组 130
6.1.5 按函数分组 131
6.2 聚合运算 132
6.2.1 聚合函数 132
6.2.2 多函数应用 134
6.3 分组运算 136
6.3.1 transform方法 137
6.3.2 apply方法 138
6.4 数据透视表 139
6.4.1 透视表 140
6.4.2 交叉表 140
6.5 综合实例——巴尔的摩公务员工资数据集 142
6.5.1 数据来源 142
6.5.2 定义问题 143
6.5.3 数据清洗 143
6.5.4 数据探索 144
第7章 matplotlib可视化 148
7.1 线形图 148
7.1.1 基本使用 148
7.1.2 颜色与线形 149
7.1.3 点标记 151
7.2 柱状图 152
7.2.1 基本使用 152
7.2.2 刻度与标签 155
7.2.3 图例 156
7.3 其他基本图表 158
7.3.1 散点图 158
7.3.2 直方图 159
7.4 自定义设置 159
7.4.1 图表布局 159
7.4.2 文本注解 162
7.4.3 样式与字体 163
7.5 综合示例——星巴克店铺数据集 164
7.5.1 数据来源 164
7.5.2 定义问题 166
7.5.3 数据清洗 166
7.5.4 数据探索 168
第8章 seaborn可视化 172
8.1 样式与分布图 172
8.1.1 seabom样式 172
8.1.2 坐标轴移除 174
8.1.3 单变量分布图 175
8.1.4 多变量分布图 178
8.2 分类图 181
8.2.1 分类散点图 181
8.2.2 箱线图与琴形图 183
8.2.3 柱状图 186
8.3 回归图与网格 187
8.3.1 回归图 187
8.3.2 网格 190
8.4 综合示例——泰坦尼克号生还者数据 191
8.4.1 数据来源 191
8.4.2 定义问题 192
8.4.3 数据清洗 192
8.4.4 数据探索 195
第9章 pyecharts可视化 202
9.1 基础图表 202
9.1.1 pyecharts安装 202
9.1.2 散点图 203
9.1.3 折线图 204
9.1.4 柱状图 206
9.2 其他图表 209
9.2.1 饼图 210
9.2.2 箱线图 212
9.3 综合示例——糗事百科用户数据 213
9.3.1 数据来源 214
9.3.2 定义问题 214
9.3.3 数据清洗 215
9.3.4 数据探索 217
第10章 时间序列 224
10.1 datetime模块 224
10.1.1 datetime构造 224
10.1.2 数据转换 225
10.2 时间序列基础 228
10.2.1 时间序列构造 228
10.2.2 索引与切片 229
10.3 日期 231
10.3.1 日期范围 231
10.3.2 频率与移动 233
10.4 时期 235
10.4.1 时期基础 235
10.4.2 频率转换 236
10.4.3 时期数据转换 237
10.5 频率转换与重采样 238
10.5.1 重采样 238
10.5.2 降采样 239
10.5.3 升采样 240
10.6 综合示例——自行车租赁数据 241
10.6.1 数据来源 241
10.6.2 定义问题 242
10.6.3 数据清洗 242
10.6.4 数据探索 244
第11章 综合案例——网站日志分析 248
11.1 数据来源 248
11.1.1 网站日志解析 248
11.1.2 日志数据清洗 251
11.2 日志数据分析 252
11.2.1 网站流量分析 252
11.2.2 状态码分析 255
11.2.3 IP地址分析 258