数据采集与预处理(微课版)

数据采集与预处理全流程
分享 推荐 0 收藏 33 阅读 3.2K
安俊秀 (作者) 978-7-115-58990-3

关于本书的内容有任何问题,请联系 孙澍

1. 结合3个行业真实数据展示大数据采集与预处理全流程
2. 入门级教材,理论内容简洁,侧重实践,内容由浅入深,便于学生迅速上手掌握
3. Python语言算法实现,实战示例丰富,代码注释详尽
4. 配套资源:微课视频、PPT课件、数据集、源代码、教材大纲、习题答案等

内容摘要

本书详细阐述了大数据领域数据采集与预处理的相关理论和技术,全面讲解了数据采集与预处理的全流程及在多领域的应用案例。本书共8章,包括数据采集与预处理概述、数据采集与存储、数据采集进阶、数据清洗、数据规整与分组聚合、豆瓣电影排行榜数据采集与预处理、使用Scrapy框架与Selenium采集股市每日点评数据并可视化、房产数据预处理。 本书可作为高等院校大数据、人工智能、计算机等专业的教材使用,也可供相关科技人员参考。

前言

随着海量网络信息的增长和互联网技术的发展,人们对信息获取的需求日益增大。大数据是指无法在一定时间内用常规软件工具进行捕捉、管理和处理的数据集合,是需要经过新处理模式进行处理才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。这些错综复杂的数据需通过数据采集技术进行收集。数据采集作为数据分析生命周期的重要一环,是需要首先了解并掌握的技术。大数据需要经过处理才能成为自己需要的数据。现实中的数据大体上都是不完整、不一致的脏数据,无法直接进行数据掘,或挖掘结果差强人意。为了提高数据挖掘的质量,产生了数据预处理技术。数据预处理有多种方法,包括数据清理、数据集成、数据变换、数据归约等。在数据挖掘之前使用这些数据处理技术,大大提高了数据挖掘的质量,降低了实际挖掘所需要的时间。在数据处理方面,Python 是数据科学家比较喜欢的语言之一。这是因为 Python 本身就是一门工程性语言,数据科学家用 Python 实现的算法可以直接用在产品中。这非常有助于大数据初创公司节省成本。
本书将 Python 与大数据的处理和分析进行整合。首先介绍数据的采集,使读者能够从不同的领域采集到想要的数据。然后讲解数据清洗,使读者能够在拥有一定 Python 基础的情况下把采集到的“脏”数据“洗掉”。在处理数据前,还需要对数据进行规整和聚合,以便于后续的大数据分析。最后通过三个使用 Python 对数据进行采集与预处理的案例,使读者对 Python 处理大数据有更直观的认识,实现理论与实践的有机结合。
本书非常适合开设 Python 或者大数据技术相关课程的高校作为教材,也适合从事Python 与大数据技术相关工作的人员使用。在学习本书之前,读者需要具备一定的计算机体系结构和计算机编程语言的基础。
本书共 8 章,分为基础篇和实例篇。基础篇为第 1~5 章,实例篇为第 6~8章。第 1 章是概述,主要介绍了数据采集与预处理的基本概念。第 2 章是数据采集与数据存储,主要介绍了如何采集数据、什么是网络爬虫及如何存储数据。第 3章是数据采集进阶,主要介绍了 AJAX 数据的抓取、使用 Selenium 抓取动态页面、Scrapy 爬虫框架。第 4 章是数据清洗,主要介绍了数据清洗的概念、缺失数据处理、异常值和重复值、数据转换。第 5 章是数据规整与分组聚合,主要介绍了数据规整的方法以及处理好数据后如何对数据进行分组聚合。第 6 章通过案例“豆瓣电影排行榜数据”介绍了数据抓取与预处理实战。第 7 章通过案例“股评数据”介绍了数据采集与可视化实战。第 8 章通过案例“房产数据”,介绍了数据处理实战。
本书由成都信息工程大学安俊秀教授、重庆师范大学徐传运副教授和成都信息工程大学的学生戴宇睿、陈金鹏等共同编写。其中第 1 章由邓鹏飞、安俊秀编写;第 2 章由税佳艺、徐传运编写;第 3 章由陈金鹏、李硕阳编写;第 4 章由谢雨江、徐传运编写;第 5 章由陈金鹏、蒋思畅编写;第 6 章、第 7 章、第 8 章由戴宇睿、安俊秀编写。安俊秀、戴宇睿、陈宏松、岳希对本书进行了审校。本书的编写和出版还得到了国家自然科学基金项目(No.71673032)的支持。
尽管在本书的编写过程中,编者力求严谨、准确,但由于技术的发展日新月异,加之编者水平有限,书中难免存在疏漏和不足之处,敬请广大读者批评指正。

目录

第 1 章 数据采集与预处理概述 ..........1
1.1 数据采集简介............................................1
1.1.1 数据采集工具.....................................1
1.1.2 爬虫的原理与分类.............................8
1.1.3 网络爬虫实现的核心流程...............11
1.1.4 爬虫的应用场景...............................14
1.2 数据预处理简介 ......................................15
1.2.1 数据预处理的目的与意义...............15
1.2.2 数据预处理的流程...........................16
1.2.3 数据预处理的工具介绍...................18
1.3 Python 中关于数据采集与预处理的
常用库......................................................19
1.3.1 请求库...............................................19
1.3.2 解析库...............................................20
1.3.3 数据存储库.......................................20
1.3.4 处理库...............................................20
习题 ................................................................21
第 2 章 数据采集与存储 .......................22
2.1 数据格式与操纵 ......................................22
2.1.1 数据格式介绍...................................22
2.1.2 JSON 格式的数据 ............................23
2.1.3 CSV 格式的数据..............................24
2.2 网页抓取:爬虫基础 ..............................24
2.2.1 HTTP 基本原理................................24
2.2.2 网页的基本元素...............................26
2.2.3 urllib 库.............................................29
2.2.4 使用 requests 库请求网站................31
2.2.5 使用正则表达式提取数据...............34
2.2.6 代理的使用.......................................41
2.2.7 使用 Cookie 登录 .............................42
2.3 解析库的使用..........................................43
2.3.1 使用 BeautifulSoup 解析网页..........43
2.3.2 使用 XPath 处理 HTML...................45
2.4 数据存储 ..................................................46
2.4.1 将数据存储为 JSON 格式................47
2.4.2 将数据存储为 CSV 格式 .................49
2.4.3 将数据存储到 MySQL 数据库中 ....51
习题 ................................................................54
第 3 章 数据采集进阶.............................55
3.1 AJAX 数据的抓取...................................55
3.1.1 什么是 AJAX....................................55
3.1.2 为什么要学习 AJAX........................56
3.1.3 怎样抓取 AJAX 数据.......................57
3.2 使用 Selenium 抓取动态渲染页面..........60
3.2.1 Selenium 的基本介绍与安装
方法...................................................60
3.2.2 Selenium 的简单应用.......................62
3.2.3 Selenium 的应用实例.......................65
3.2.4 Selenium 的高级操作.......................69
3.3 爬虫框架 ..................................................71
3.3.1 爬虫框架介绍...................................71
3.3.2 爬虫框架机制...................................72
3.4 Scrapy 框架..............................................73
3.4.1 Scrapy 简介与安装方法...................73
3.4.2 Scrapy 的应用...................................74
3.4.3 创建工程项目和 Spider 模板...........75
3.4.4 编写 Spider .......................................76
3.4.5 编写 Item Pipeline.............................77
3.4.6 优化配置策略...................................77
习题 ................................................................78
第 4 章 数据清洗.......................................79
4.1 数据清洗概述 ..........................................79
数据采集与预处理(微课版)
2
4.2 处理缺失值..............................................81
4.2.1 数据缺失的原因...............................82
4.2.2 缺失值的主要处理方法...................82
4.3 异常值和重复值的处理 ..........................86
4.3.1 删除重复值.......................................86
4.3.2 检测异常值.......................................88
4.3.3 过滤异常值.......................................90
4.4 数据转换..................................................91
4.4.1 数据类型转换...................................91
4.4.2 用函数或映射进行数据转换...........92
4.4.3 重命名轴索引...................................93
4.4.4 连续数据离散化...............................94
4.4.5 哑变量处理.......................................95
4.4.6 数据标准化.......................................96
习题 ................................................................98
第 5 章 数据规整与分组聚合.............99
5.1 数据规整..................................................99
5.1.1 数据联合与合并...............................99
5.1.2 分层索引.........................................103
5.1.3 数据重塑.........................................105
5.2 数据分组................................................105
5.2.1 创建分组数据.................................106
5.2.2 运用 groupby()函数分组................106
5.3 数据聚合................................................109
5.3.1 groupby 对象中预置的聚合函数....109
5.3.2 agg()函数与 transform()函数 .........111
5.3.3 apply()函数应用.............................113
习题 .............................................................. 115
第 6 章 豆瓣电影排行榜数据
抓取与预处理...........................117
6.1 豆瓣电影排行榜数据采集目标 ............ 117
6.2 豆瓣网页结构分析................................ 118
6.2.1 宏观整体页面分析.........................118
6.2.2 微观具体信息抓取.........................120
6.3 创建爬虫................................................121
6.3.1 准备 URL........................................121
6.3.2 请求及响应.....................................122
6.3.3 提取数据.........................................123
6.3.4 保存数据.........................................129
6.4 数据预处理............................................131
6.5 数据可视化............................................136
习题 ..............................................................137
第7章 使用Scrapy框架与Selenium
采集股市每日点评数据并
可视化............................................138
7.1 采集目标和准备工作 ............................138
7.2 大盘每日点评网页结构分析 ................140
7.3 使用 Scrapy 框架与 Selenium 抓取
信息........................................................141
7.3.1 编写 item.py 与 spider.py ...............141
7.3.2 编写 middlewares.py ......................143
7.3.3 编写 pipelines.py ............................145
7.3.4 设置 settings.py...............................148
7.3.5 运行结果.........................................149
7.4 数据预处理与可视化 ............................150
7.4.1 数据预处理.....................................150
7.4.2 数据可视化.....................................155
习题 ..............................................................157
第 8 章 房产数据预处理 .....................159
8.1 研究背景和目标分析 ............................159
8.2 数据描述与探索 ....................................160
8.3 数据预处理............................................164
8.3.1 属性归约.........................................164
8.3.2 缺失值处理.....................................166
8.3.3 异常值处理.....................................167
8.3.4 数据变换.........................................169
8.3.5 保存数据.........................................172
习题 ..............................................................173
参考文献.........................................................174

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

安俊秀,成都信息工程大学软件工程学院教授,主要研究领域为云计算与大数据技术、大数据分析与服务、云计算技术及应用。

购买本书用户

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部