本书以项目化实践为设计理念,专注于引导读者通过Python探索并提升数据分析的实战技能。在数据驱动时代,本书结合前沿技术和实际操作,通过精选案例,使读者能够在实践中理解并掌握数据分析的关键技术和方法。本书以掌握Python基础为前提,从10个精简案例入手,循序渐进地介绍数据分析工具在不同业务领域中的应用。本书强调实用性和操作性,每个项目都给出了具体实施步骤,帮助读者在实际操作中不断试错、学习和提高。
陈清华,女,博士,教授、高级工程师,从事计算机研发及教学工作15余年,主要从事方向为数据挖掘、人工智能和群智感知,是"大数据技术”国家级职业教育创新教学团队核心成员,温州市"特支计划”科技创新青年拔尖人才、高层次D类人才,金砖国家职业技能大赛区块链技术赛项全国优秀专家。
项目1 环保调查问卷系统实现 1
任务1 使用Python创建问卷 6
1.1.1 Python脚本文件 8
1.1.2 Python编码设置 9
1.1.3 print()函数 9
1.1.4 运行Python脚本 9
任务2 实现用户信息交互 10
1.2.1 变量与字面量 12
1.2.2 数据类型 12
1.2.3 注释 13
任务3 校验用户信息 14
1.3.1 控制结构 16
1.3.2 分支结构 17
任务4 采集并评估用户问卷数据 18
1.4.1 for循环 20
1.4.2 while循环 21
1.4.3 第三方包的安装与导入 22
拓展实训:随机加减法出题程序的实现 23
项目考核 23
项目2 疫苗物流信息监测系统实现 25
任务1 管理员登录功能的实现 28
2.1.1 函数的定义 30
2.1.2 函数的调用 31
任务2 疫苗数据添加功能的实现 31
2.2.1 函数的返回 35
2.2.2 变量的作用域 37
任务3 疫苗信息统计功能的实现 38
2.3.1 形参与实参 41
2.3.2 位置参数与关键字参数 42
2.3.3 默认参数 44
2.3.4 可变参数 45
任务4 疫苗物流信息异常检测功能的实现 46
拓展实训:自定义难度的出题程序实现 49
项目考核 50
项目3 寻宝游戏实现 51
任务1 地图类的实现 54
3.1.1 面向对象 56
3.1.2 类的定义 57
3.1.3 类的实例化 58
任务2 玩家类的实现 59
3.2.1 类的成员 61
3.2.2 构造函数和析构函数 62
3.2.3 类成员修饰符 63
3.2.4 私有函数 63
任务3 战绩类的实现 64
3.3.1 公有属性和私有属性 67
3.3.2 get方法和set方法 68
任务4 超级玩家类的实现 70
3.4.1 父类和子类 73
3.4.2 属性的继承 73
3.4.3 方法的继承 74
拓展实训:飞机大战游戏的实现 75
项目考核 78
项目4 新能源汽车登记数据统计分析 79
任务1 登记数据的获取 82
4.1.1 数据来源 84
4.1.2 read_csv()函数 85
任务2 登记数据的解析 86
4.2.1 数据解析 88
4.2.2 缺失值处理 89
4.2.3 数据筛选 89
任务3 登记数据的描述性统计分析 90
4.3.1 描述性统计分析指标 92
4.3.2 groupby()函数 92
任务4 登记数据的可视化展现 93
4.4.1 数据可视化 95
4.4.2 统计分析结果展现形式 96
4.4.3 Matplotlib中的中文显示 96
4.4.4 Matplotlib图表绘制基础 96
拓展实训:数据统计分析应用 99
项目考核 102
项目5 用餐数据多维分析 104
任务1 用餐数据的集成和处理 107
5.1.1 数据集成 110
5.1.2 数据映射 111
5.1.3 数据类型转换 111
任务2 用餐数据的重复值检测和处理 112
5.2.1 检测重复值 113
5.2.2 删除重复值 113
任务3 用餐数据的缺失值检测和处理 113
5.3.1 检测缺失值 115
5.3.2 处理缺失值 115
任务4 用餐数据的异常值检测和处理 116
5.4.1 检测异常值 120
5.4.2 处理异常值 120
任务5 对用餐数据进行多维分析 121
5.5.1 分组分析 125
5.5.2 分布分析 125
5.5.3 交叉分析 126
5.5.4 结构分析 126
5.5.5 相关分析 127
拓展实训:对观影数据进行统计分析 128
项目考核 129
项目6 发电量数据推断统计分析 131
任务1 从MySQL数据库中读取数据 134
6.1.1 连接MySQL数据库 136
6.1.2 读取数据 136
任务2 对发电量进行时间序列分析 137
6.2.1 时间处理函数 139
6.2.2 时间序列分析 140
任务3 对发电量进行假设检验 141
6.3.1 独立性检验和自相关函数 144
6.3.2 正态性和S-W检验 145
6.3.3 方差齐性和Levene检验 146
任务4 对发电量进行方差分析 146
6.4.1 方差分析与F统计量 147
6.4.2 假设检验的步骤 147
拓展实训:风力发电数据推断统计 148
项目考核 149
项目7 电商平台用户消费数据分析 151
任务1 用户数据的创建 154
7.1.1 数组创建 156
7.1.2 数组数据类型 157
7.1.3 数组的索引和切片 159
任务2 用户数据的更新 161
7.2.1 随机数生成 164
7.2.2 数组操作 164
任务3 用户数据的分析 168
7.3.1 矩阵创建 169
7.3.2 基本数学函数 172
7.3.3 统计函数 175
拓展实训:用户数据RFM模型分析 176
项目考核 177
项目8 AI生成图像的处理和优化 179
任务1 图像基本操作 181
8.1.1 图像读取和保存 186
8.1.2 数组索引和切片的应用 187
8.1.3 数组基本运算 187
8.1.4 meshgrid()函数 188
任务2 图像缩放处理 188
8.2.1 repeat()函数 190
8.2.2 tile()函数 191
任务3 为图像添加框线 191
8.3.1 pad()函数 194
8.3.2 数组赋值运算 194
任务4 图像滤波和增强 195
8.4.1 NumPy聚合函数 198
8.4.2 NumPy随机数应用 199
8.4.3 clip()函数 199
任务5 图像边缘检测 199
8.5.1 Sobel算子 202
8.5.2 hypot()函数 202
拓展实训:医学影像的处理和优化 203
项目考核 204
项目9 房屋租赁数据可视化分析 206
任务1 房屋租赁价格统计分析 209
9.1.1 常用的统计分析函数 212
9.1.2 柱状图 213
9.1.3 直方图 214
9.1.4 hist()函数 214
任务2 房屋租赁价格分布分析 215
9.2.1 箱形图 216
9.2.2 boxplot()函数 217
任务3 房屋租赁价格相关因素分析 217
9.3.1 散点图 220
9.3.2 scatter()函数 221
任务4 房源占比分析 222
9.4.1 饼图 224
9.4.2 pie()函数 224
任务5 房屋租赁价格预测分析 225
9.5.1 sklearn简介 227
9.5.2 sklearn实现线性回归分析 227
9.5.3 折线图 228
9.5.4 plot()函数 228
任务6 房源地理位置分布分析 228
拓展实训:二手房数据可视化分析 232
项目考核 235
项目10 二手车数据可视化分析 237
任务1 使用常见图表对二手车数据进行分析 240
10.1.1 Seaborn简介 243
10.1.2 lineplot()函数 244
10.1.3 catplot()函数 244
任务2 使用词云图展现二手车市场的热门车型和城市 245
10.2.1 词云图 247
10.2.2 wordcloud简介 247
任务3 使用热力图展现二手车地理分布情况 248
10.3.1 Pyecharts简介 249
10.3.2 使用Pyecharts绘制地图 249
任务4 对二手车车龄、里程数进行分布分析 250
10.4.1 histplot()函数 254
10.4.2 violinplot()函数 254
10.4.3 swarmplot()函数 255
任务5 对二手车价格影响因素进行相关分析 255
10.5.1 heatmap()函数 258
10.5.2 jointplot()函数 258
10.5.3 pairplot()函数 259
任务6 对二手车数据进行回归分析 259
10.6.1 多项式回归 262
10.6.2 sklearn实现多项式回归 262
拓展实训:招考数据可视化分析 263
项目考核 264
附录A 266
附录B 267
参考文献 275