本书以构建完整的知识体系为目标,按照从简单到复杂的思路,贯穿了数据处理与挖掘的各个环节,具体包括:Python快速入门、Python数据类型、Python常用模块、Python数据获取、Python数据挖掘基础、Python数据挖掘算法、Python大数据挖掘和Python数据可视化。此外,针对各知识点,本书均设计了相应的Python案例,并给出了实现代码、效果图以及相应的解释,以强化读者对各知识点的理解与掌握。
本书可作为高等院校人工智能、计算机科学与技术、经济与金融等专业的教材,也可供大数据分析与处理等领域的技术人员学习使用,还可作为数据分析与挖掘研究人员的参考用书。
1.本书助力读者使用Python编程语言分析数据,并且能够设计和应用模型以在数据中提取知识,进而对其进行可视化处理;
2.任务驱动的知识学习过程,如结合数据挖掘知识探索一个地区最近房价波动的规律、天气变化的规律、当前大众关心和讨论的热点话题等;
3.作者长期从事数据分析、人工智能、Linux编程等课程的教学工作。主要研究方向包括大数据分析与挖掘、智能驾驶等;
4.三步骤:数据准备、数据模型构建、数据可视化,此过程即可提升学生的实践能力,加固学生对理论知识的深入理解;
5.针对各知识点均设计了相应的Python案例,并给出了实现代码、效果图以及相应的解释,以强化读者对各知识点的理解与掌握。
【吴振宇】
北京航空航天大学工学博士,南京邮电大学物联网学院教师,中国指挥与控制学会认知与行为专业委员会委员,中国计算机学会网络与数据通信专业委员会委员。具有长达4年的外商投资企业软件开发经验,长期从事数据分析、人工智能、Linux编程等课程的教学工作。主要研究方向包括大数据分析与挖掘、智能驾驶等。
第 1章 Python快速入门 1
1.1 一种简单的编程语言 2
1.1.1 Python--解释型编程语言 2
1.1.2 Python应用 3
1.2 Python开发环境 4
1.2.1 搭建简单的Python开发环境 4
1.2.2 功能强大的集成开发环境 6
1.2.3 交互式开发环境 6
1.3 Python中简单的程序结构 8
1.3.1 文件是代码的基本组成单元 8
1.3.2 模块化地组织代码 8
1.3.3 代码缩进区分逻辑关系 10
1.3.4 输入和输出提升程序交互性 10
1.3.5 常见的Python解释器 11
1.4 习题 12
第 2章 Python数据类型 13
2.1 数据类型是数据表示的基础 14
2.1.1 Python中一切皆对象 14
2.1.2 数字类型 14
2.1.3 布尔类型 15
2.1.4 字符串类型 15
2.1.5 自定义数据类型 16
2.1.6 变量 17
2.2 语句组成逻辑结构 18
2.2.1 运算符和表达式 19
2.2.2 语句 20
2.3 控制程序的执行 21
2.3.1 顺序结构 21
2.3.2 分支结构 21
2.3.3 循环结构 22
2.4 有效存储数据 24
2.4.1 列表 25
2.4.2 元组 27
2.4.3 字典 28
2.4.4 集合 29
2.4.5 特殊运算符 30
2.5 函数实现代码复用 31
2.5.1 自定义函数 31
2.5.2 内置函数 32
2.5.3 字符串处理函数 33
2.5.4 函数式编程 33
2.6 存储数据 35
2.6.1 文件操作 36
2.6.2 JSON和XML 36
2.7 案例:传感器数据分析 40
2.8 习题 42
第3章 Python常用模块 43
3.1 模块的概念 44
3.2 自定义模块 46
3.3 正则表达式模块 46
3.4 NumPy和SciPy模块 50
3.4.1 NumPy 51
3.4.2 SciPy 59
3.5 Pandas库 61
3.6 习题 71
第4章 Python数据获取 73
4.1 Web的客户端/服务器工作模式 74
4.1.1 Web数据传输协议 75
4.1.2 Web页面标记语言 78
4.1.3 Web样式设计 81
4.2 Python设计爬虫软件 84
4.2.1 页面请求库URLLib 84
4.2.2 增强的网络请求库Requests 88
4.2.3 页面内容解析库BeautifulSoup 91
4.2.4 案例:在互联网上获取电影评论数据 95
4.2.5 浏览器中模拟点击的Selenium库 97
4.3 多线程提升数据获取的效率 103
4.3.1 多线程的使用方法 104
4.3.2 案例:多线程在页面数据获取中的应用 106
4.4 习题 109
第5章 Python数据挖掘基础 111
5.1 数据挖掘的基本概念 112
5.1.1 数据挖掘中常用的术语 112
5.1.2 数据挖掘的流程 113
5.2 数据集是数据挖掘的基础 115
5.2.1 各领域公开了大量的数据集 115
5.2.2 自定义数据 119
5.3 Python中常用的 数据挖掘库 120
5.3.1 自然语言处理常用的NLTK库 120
5.3.2 机器学习常用的Sklearn库 125
5.4 习题 134
第6章 Python数据挖掘算法 135
6.1 数据挖掘中的分类 136
6.1.1 分类问题的基本思想 136
6.1.2 常见的分类算法 139
6.1.3 朴素贝叶斯分类算法的原理 145
6.1.4 案例:从头实现朴素贝叶斯分类算法 146
6.2 数据挖掘中的聚类 148
6.2.1 聚类的基本思想 149
6.2.2 常见的聚类算法 152
6.2.3 K-means聚类算法的原理 168
6.2.4 案例:从头实现K-means聚类算法 169
6.3 习题 171
第7章 Python大数据挖掘 173
7.1 深度学习是大数据处理的重要手段 174
7.1.1 深度学习来源于神经网络 175
7.1.2 深度学习已有大量模型 187
7.1.3 深度学习框架提升使用效率 191
7.1.4 卷积神经网络的工作原理 193
7.1.5 LSTM网络的工作原理 196
7.1.6 案例:使用卷积神经网络实现蔬菜识别系统 200
7.2 习题 204
第8章 Python数据可视化 207
8.1 可视化技术自然地展现数据规律 208
8.2 最为常用的Matplotlib库 208
8.2.1 使用Matplotlib库绘制各种图形 211
8.2.2 Pandas库中直接绘图 216
8.3 Seaborn库增强绘图效果 219
8.4 Plotnine库弥补可视化不足 225
8.5 案例:房价数据采集及可视化 228
8.6 习题 231
参考文献 232