目录
第1部分数据分析准备
第1章数据分析入门3
1.1认识数据分析3
1.1.1数据分析的价值3
1.1.2数据分析的应用4
1.1.3数据分析的核心思维5
1.1.4数据分析流程: OSEMN模型6
1.1.5数据分析方法7
1.2工具与环境搭建8
1.2.1Python在数据分析中的优势8
1.2.2Anaconda安装与配置8
1.3Jupyter Notebook核心操作与文档撰写10
1.3.1Jupyter Notebook的笔记本和单元格10
1.3.2笔记本文件的创建、运行与管理11
1.3.3高效快捷键操作指南12
1.3.4使用Markdown撰写结构化分析文档13
1.4实践: 超市运营数据分析方案设计15
1.4.1项目背景15
1.4.2项目目标16
1.4.3项目实施16
1.4.4项目总结18
第2章Python数据分析必备编程基础20
2.1Python程序的基本构成要素20
2.1.1行20
2.1.2缩进21
2.1.3标识符21
2.1.4关键字21
2.1.5注释21
2.1.6变量22
2.1.7引号和转义字符22
2.2基本数据类型及类型转换与常用运算22
2.2.1基本数据类型22
2.2.2数据类型转换23
2.3数据运算与常用函数23
2.3.1基本运算符与优先级23
2.3.2常用内置函数24
2.4流程控制结构24
2.4.1顺序结构24
2.4.2选择结构25
2.4.3循环结构25
2.5函数26
2.5.1自定义函数26
2.5.2匿名函数26
2.6容器类型与基本操作27
2.6.1列表及其基本操作27
2.6.2元组及其基本操作28
2.6.3集合及其基本操作29
2.6.4字典及其基本操作30
2.6.5容器数据类型的通用操作31
2.7使用NumPy进行高效数据计算32
2.7.1NumPy数组32
2.7.2NumPy数组的核心优势33
2.7.3数组的创建与保存35
2.7.4数组的基本属性43
2.7.5数组索引44
2.7.6数组形状操作45
2.7.7向量化运算47
2.7.8广播机制50
2.8实践: 电商销售数据分析52
2.8.1项目背景52
2.8.2项目目标52
2.8.3项目实施52
2.8.4项目总结55
第2部分数据处理与可视化分析
第3章Pandas数据处理基础59
3.1Pandas的数据结构59
3.1.1Pandas数据结构的创建60
3.1.2Pandas数据结构的基本属性63
3.2索引操作65
3.2.1索引对象的核心特性65
3.2.2索引的基本操作65
3.2.3缺失值处理68
3.3数据的查询69
3.3.1快速浏览数据70
3.3.2精确提取数据: loc、iloc72
3.4数据的编辑75
3.4.1修改数据75
3.4.2增加数据76
3.4.3删除DataFrame数据77
3.5描述性统计分析79
3.5.1数值型特征的描述性统计(describe()方法)79
3.5.2常用统计函数80
3.5.3类别型特征的频数统计81
3.6分级别汇总统计83
3.6.1创建层次化索引(set_index()方法)83
3.6.2重排层次化索引(swaplevel()方法)84
3.6.3分级别汇总统计(level参数)85
3.7数据排序86
3.7.1按索引排序(sort_index()方法)86
3.7.2按数值排序(sort_values()方法)88
3.8利用Pandas读写数据90
3.8.1读写文本类文件90
3.8.2读写Excel文件92
3.8.3读写数据库文件94
3.9实践: 电商运营数据初探97
3.9.1项目背景97
3.9.2项目目标98
3.9.3项目实施98
3.9.4项目总结101
第4章数据清洗与预处理102
4.1数据清洗与预处理基础102
4.1.1数据清洗与预处理的目标与重要性102
4.1.2数据质量问题的常见类型103
4.1.3数据清洗与预处理的基本流程103
4.2重复值的检测与处理104
4.2.1重复值的判定规则104
4.2.2重复值的检测与标识104
4.2.3重复值的删除处理106
4.3缺失值的检测与处理107
4.3.1缺失值的检测与统计108
4.3.2缺失值的删除处理108
4.3.3缺失值的填充处理109
4.3.4缺失值的插值填充111
4.4异常值检测与处理112
4.4.1标准差(3σ)法113
4.4.2箱线图法114
4.4.3异常值的处理策略115
4.5数据转换与标准化116
4.5.1数据类型转换与编码116
4.5.2数据的归一化与标准化118
4.5.3连续数据分箱与离散化120
4.6实践: 电商订单数据清洗与预处理项目121
4.6.1项目背景121
4.6.2项目目标122
4.6.3项目实施122
4.6.4项目总结125
第5章数据可视化分析126
5.1数据可视化分析简介126
5.1.1数据可视化分析的经典案例126
5.1.2数据可视化的分析用途127
5.1.3数据可视化图表类型128
5.1.4Python数据可视化方法128
5.2Matplotlib基础绘图129
5.2.1Matplotlib的安装129
5.2.2Matplotlib绘图主要流程130
5.2.3图形属性与rc参数配置132
5.3Matplotlib 常用图表绘制135
5.3.1折线图135
5.3.2柱状图139
5.3.3散点图140
5.3.4饼图142
5.3.5箱线图144
5.3.6热力图146
5.4实践: 人力资源数据可视化分析148
5.4.1项目背景148
5.4.2项目目标149
5.4.3项目实施150
5.4.4项目总结160
第3部分数据整合与探索性分析
第6章数据合并与重塑163
6.1纵向合并163
6.1.1纵向合并简介163
6.1.2数据合并函数concat()164
6.2横向合并166
6.2.1横向合并简介166
6.2.2使用concat()函数进行横向合并167
6.2.3使用merge()函数进行横向合并168
6.2.4使用join()方法进行横向合并170
6.3数据变形172
6.3.1什么是数据变形172
6.3.2数据变形的两种基本形式172
6.3.3宽格式转长格式函数melt()172
6.3.4长格式转宽格式函数pivot()174
6.3.5层次化索引操作stack()与unstack()175
6.4实践: 中风患者健康数据整合与分析177
6.4.1项目背景177
6.4.2项目目标178
6.4.3项目实施178
6.4.4项目总结181
第7章分组聚合与数据透视182
7.1分组思想182
7.1.1为什么要分组182
7.1.2分组分析三步骤183
7.2分组描述统计183
7.2.1groupby()基础用法184
7.2.2单列分组与多列分组184
7.2.3分组对象的常用属性和方法185
7.2.4分组后直接应用统计方法187
7.3数据聚合基础188
7.3.1agg方法及基础用法188
7.3.2多函数聚合与多列聚合190
7.4进阶聚合192
7.4.1灵活的自定义聚合192
7.4.2保持形状的聚合193
7.4.33种聚合方法对比与选择原则195
7.5数据透视表(pivot_table)195
7.5.1从分组到透视的思维转换195
7.5.2数据透视表核心用法197
7.5.3透视表与分组运算的功能定位198
7.6交叉表199
7.6.1交叉表核心用法199
7.6.2交叉表与透视表的差异200
7.7实践: 城市空气质量数据统计分析201
7.7.1项目背景201
7.7.2项目目标201
7.7.3项目实施201
7.7.4项目总结205
第8章时间序列分析207
8.1时间类型数据的转换与索引对象构建207
8.1.1时间字符串转换为标准时间类型207
8.1.2时间索引对象209
8.2时间序列常用操作211
8.2.1时间信息提取211
8.2.2时间间隔运算213
8.2.3有规律时间序列创建214
8.2.4重采样216
8.3趋势分解218
8.3.1趋势分解基础模型218
8.3.2趋势分解函数seasonal_decompose()219
8.4时间序列预测方法之移动平均法221
8.4.1移动平均法原理221
8.4.2移动平均法的应用222
8.5实践: 某产品日销量季节性分析224
8.5.1项目背景224
8.5.2项目目标225
8.5.3项目实施225
8.5.4项目总结230
第9章探索性数据分析231
9.1EDA概述与核心思想231
9.1.1什么是探索性数据分析231
9.1.2EDA与建模的关系232
9.1.3EDA的基本流程框架232
9.2单变量分布分析233
9.2.1集中趋势233
9.2.2离散程度234
9.2.3分布可视化235
9.3双变量关系分析236
9.3.1数值变量间关系236
9.3.2分类变量与数值变量关系238
9.3.3分类变量间关系239
9.4多变量探索分析241
9.4.1多变量相关性矩阵241
9.4.2散点矩阵与降维观察243
9.4.3分组聚合与对比分析247
9.5实践: 心脏病患病数据EDA250
9.5.1项目背景250
9.5.2项目目标251
9.5.3项目实施251
9.5.4项目总结258
第4部分预测建模与机器学习
第10章机器学习之有监督学习263
10.1机器学习概述263
10.1.1机器学习简介263
10.1.2scikitlearn 库简介264
10.1.3机器学习方法分类266
10.1.4机器学习方法的选择路径266
10.1.5机器学习工作流程267
10.2特征工程268
10.2.1特征选择268
10.2.2特征构造269
10.3有监督学习269
10.4模型评估指标270
10.5实践: 回归预测与房价估计模型272
10.5.1项目背景273
10.5.2项目目标273
10.5.3项目实施273
10.5.4项目总结281
10.6实践: 分类预测与用户流失预警模型282
10.6.1项目背景282
10.6.2项目目标282
10.6.3项目实施283
10.6.4项目总结291
第11章机器学习之无监督学习292
11.1无监督学习概述292
11.2聚类分析293
11.3KMeans聚类算法296
11.3.1KMeans算法原理与K值选择296
11.3.2聚类结果评估与可视化299
11.4实践: 游客评论聚类分析302
11.4.1项目背景302
11.4.2项目目标302
11.4.3项目实施303
11.4.4项目总结308
第5部分综 合 实 践
第12章电商用户行为分析与精准营销313
12.1项目背景313
12.2项目目标314
12.3项目实施314
12.3.1数据获取与预处理315
12.3.2RFM指标计算与基本信息合并325
12.3.3用户分群——基于RFM的KMeans聚类分析327
12.3.4群组特征可视化与业务解读330
12.4项目总结334
第13章混凝土配方优化与成本决策335
13.1项目背景335
13.2项目目标336
13.3项目实施336
13.3.1数据探索与问题识别337
13.3.2特征工程与业务理解340
13.3.3模型构建与评估341
13.3.4成本优化与决策支持345
13.4项目总结347
参考文献348
