推荐序
我个人从事数据挖掘及大数据分析工作已经超过25 年。对于要如何成为一个好的数据科学家,我个人认为要具备以下三个特质:
是对数据的热爱,见到数据就像见到心仪的人一样,想去亲近它,想去了解它。
第二是对相关数据分析工具的纯熟运用,让你能随心所欲地驾驭数据。
第三是懂得如何将数据分析与行业领域知识相结合,让数据分析能有效地协助领导做出适当的决策。
我所认识的零一就是具备这三项特质的一个人。听到他要出书,我很高兴,因为对于热爱数据分析的工作者又有福了。
零一的这本书从数据挖掘及商业数据分析的基础开始,循序渐进地引导读者,熟悉相关的数据分析的概念及工具。之后用市场分析、店铺数据化运营、数字营销及销售预测等案例,让读者了解如何将数据分析与零售和电子商务的实务进行完美的结合。本书的整体编排及架构我很喜欢,相信读完此书的人也会有同样的感受。
我们近经常听到一句话就是,机器及将取代人力,因此还吓坏了许多人。其实从我的角度来说,要取代人的机器,还是人设计出来的。因此,解决这个问题的关键就是你自己。不仅仅机器需要深度学习,更需要深度学习的还是我们自己。零一的这本书就是大家开始深度学习的基础,是值得推荐的一本好书。
李御玺(Yue-Shi Lee)
台湾大学资讯工程博士
铭传大学资讯工程学系教授
中华资料采矿协会理事
前言
Python 已经成为时下热门的计算机语言之一,应用范围十分广泛,甚至进入了小学课堂。目前许多书籍内容还是以学习如何使用Python 工具为主,在实际应用方面相对较少,特别是在零售分析方面的应用少之又少。大部分企业做数据分析还是以Excel 为主。在这个背景之下,笔者写这本书是为了能把Python 带入普通企业中。
Excel 能做的事情,Python 都可以完成,但是Python 能做的事情,Excel 未必可以做。
全书分为6 章。第1 章介绍Python 基础;第2 章重点介绍数据采集、数据库,以及常用的NumPy、Pandas、matplotlib 库;第3 章重点介绍市场分析案例;第4 章重点介绍SEO、推广方案和竞品分析的案例;第5 章重点介绍数字营销案例;第6章重点介绍销售预测案例。
这本书对Python 零基础的读者较不友好,建议Python 零基础的读者配套基础入门书籍学习。读者如果具备Python 基础,可以直接从第2 章读起。考虑到数据的敏感性和难度,本书案例在数据上做了部分精简,目前保留的案例数据集的只有500MB,从学习和掌握本书所述方法的角度,可以满足需求。
后,鉴于作者的水平有限,书中存在的不足之处请读者谅解。
作者
2021 年5 月
1 Python 基础 1
1.1 安装Python 环境 2
1.1.1 Python 3.6.2 安装与配置 2
1.1.2 获取PyCharm 4
1.1.3 获取Anaconda 4
1.2 Python 操作入门 6
1.2.1 编写段Python 代码 6
1.2.2 Python 基本操作 9
1.2.3 Python 变量 11
1.2.4 Python 数据类型 11
1.2.5 Python 控制语句与函数 17
1.2.6 Python 自定义函数 20
2 Python 商业数据分析基础 21
2.1 什么是数据分析 22
2.1.1 理解数据分析 22
2.1.2 数据分析的两个核心思维 23
2.1.3 数据分析的方法论 23
2.2 Python 在商业分析中的价值 32
2.2.1 人生苦短,我用Python 32
2.2.2 Python 在商业分析应用中的优势 33
2.3 数据采集 33
2.3.1 采集数据前的准备工作 33
2.3.2 Requests 库 40
2.4 数据库操作及文件读写 48
2.4.1 MySQL 数据库 48
2.4.2 数据库操作 50
2.5 NumPy 数组处理 54
2.5.1 一维数组操作 54
2.5.2 多维数组操作 56
2.5.3 数组运算 60
2.6 Pandas 数据处理 61
2.6.1 数据导入与导出 61
2.6.2 数据描述性统计 62
2.6.3 数据透视汇总 63
2.7 商业分析可视化 65
2.7.1 柱状图 66
2.7.2 饼图 68
2.7.3 线图 69
2.7.4 散点图 70
3 Python 与市场分析案例 73
3.1 案例:市场大盘容量分析 75
3.1.1 案例背景及数据理解 75
3.1.2 计算市场规模 76
3.1.3 计算市场相对规模 78
3.1.4 绘制柱状图和饼图 79
3.2 案例:市场趋势分析 81
3.2.1 案例背景及数据理解 82
3.2.2 根据时间合并市场数据 83
3.2.3 补齐缺失月的数据 84
3.2.4 绘制趋势图 89
3.2.5 计算市场增量 94
3.2.6 绘制组合图 94
3.3 案例:细分市场分析 95
3.3.1 案例背景及数据理解 96
3.3.2 类别的分布分析 96
3.3.3 识别潜力细分市场 99
3.3.4 潜力细分市场需求分析 104
3.3.5 消费者需求分析 106
4 Python 与店铺数据化运营案例 115
4.1 案例:用Python 做SEO 116
4.1.1 案例背景及数据理解 116
4.1.2 关键词词根分词与统计 117
4.1.3 可视化图形 118
4.2 案例:用Python 做推广方案 122
4.2.1 案例背景及数据理解 122
4.2.2 计算渠道投放预算的解 124
4.2.3 计算品类投放预算的解 126
4.2.4 计算各个品类在不同渠道的解 127
4.3 案例:用Python 分析竞品 131
4.3.1 案例背景及数据理解 131
4.3.2 采集数据 131
4.3.3 竞品调价预警 134
5 Python 与数字营销案例 137
5.1 案例:基于关联规则的产品推荐 138
5.1.1 算法原理及案例背景 138
5.1.2 创建商品项集 141
5.1.3 建立函数挑选小支持度项集 143
5.1.4 训练步骤项集函数 144
5.2 案例:基于聚类算法的商品推荐 147
5.2.1 算法原理及案例背景 147
5.2.2 消费者聚类 150
5.2.3 基于消费者聚类的推荐 167
5.3 案例:基于协同过滤算法的产品推荐 176
5.3.1 算法原理及案例背景 176
5.3.2 数据准备 178
5.3.3 推荐算法建模 179
5.4 案例:消费者舆情分析 183
5.4.1 案例背景及数据理解 183
5.4.2 案例实现 183
6 Python 与销售预测案例 187
6.1 案例:基于业务逻辑的预测算法模型 188
6.1.1 案例背景及数据理解 188
6.1.2 案例实现 188
6.2 案例:基于时序算法预测库存 189
6.2.1 算法原理及案例背景 189
6.2.2 数据及时序检查 191
6.2.3 时间序列建模 198
6.2.4 循环迭代的ARIMA 模型 203
6.3 案例:电商的库存预测算法建模 207
6.3.1 算法原理及案例背景 208
6.3.2 准备数据 209
6.3.3 计算补货量 211
6.4 案例:用户成单预测 212
6.4.1 算法原理及案例背景 212
6.4.2 数据准备 215
6.4.3 数据挖掘 243
6.5 案例:用户流失预测 246
6.5.1 算法原理及案例背景 246
6.5.2 数据准备 249
6.5.3 数据挖掘 254