《数据采集与预处理(第2版)》
面向大数据专业的教材
全国高校知名大数据教师精品力作
作者:厦门大学计算机科学系 林子雨 博士/副教授
E-mail:ziyulin@xmu.edu.cn
出版社:人民邮电出版社 2025年1月第2版
ISBN:978-7-115-65728-2 定价:69.80 元
教材预计2025年1月中下旬上市销售
提供讲义PPT、教学大纲、教案、实验答案、软件、代码、课程思政案例
扫一扫访问本网页
样书申请
授课教师可以向人民邮电出版社申请样书,出版社联系人孙澍(手机:18911351293),或者也可以扫描下面二维码申请样书。
扫码申请样书
【教材简介】
本书详细阐述了大数据领域数据采集与预处理的相关理论和技术。全书共8章,内容包括概述、大数据实验环境搭建、网络数据采集、分布式消息系统Kafka、日志采集系统Flume、数据仓库中的数据集成、ETL工具Kettle、使用pandas进行数据清洗。本书包含了丰富的实践操作和应用案例,以便读者更好地学习和掌握数据采集与预处理的关键技术。
第2版和第1版教材的区别
本书第1版于2022年2月出版(访问第1版教材官网),目前,该书已经被国内超过300所高校采用,用书教师在给予高度评价的同时,也反馈了很多宝贵的意见和建议,为本书的改版指明了方向。
本书第1版在高校的实际使用过程中,在上机实践环节,很多高校教师遇到了问题:(1)第1版要求在Windows系统中开展上机实践,并且为了让一些大数据软件获得系统的权限,都需要安装在C盘根目录下,这个要求在很多高校机房遇到了阻碍。很多高校机房,都采用了自动化的机房管理软件,不允许任课教师随意在机房计算机的C盘根目录下安装软件,即使安装了软件,在计算机重启后,也会被自动删除。(2)很多高校大数据专业的其他大数据核心课程都是在Linux系统中开展实验,而不是选择Windows系统。
因此,本书第2版放弃了Windows操作系统,转而采用Linux操作系统。实际上,“数据采集与预处理”课程在很多高校的大数据专业人才培养方案中,是被安排在其他大数据课程(比如大数据技术原理与应用、Spark编程基础等)之后开设,因此,学生在学习“数据采集与预处理”课程时,已经通过其他大数据课程熟悉了Linux系统的使用方法。当然,本书第2版也考虑到了学生可能没有接触过Linux系统这种情况,在第2章内容中做了基础性介绍。总之,采用Linux系统作为本书的上机环境,可以更好满足高校实际教学需求。
另外,一些高校教师也对本书内容改版提出了一些具有较高参加价值的建议,比如,期望进一步丰富完善网络爬虫、Kettle、Flume、数据清洗方面的内容,补充更多的操作案例。本书第2版全部采纳了这些改版建议。
【作者介绍】
林子雨(1978-),男,博士(毕业于北京大学),国内高校知名大数据教师,厦门大学计算机科学与技术系副教授,厦门大学数据库实验室负责人,中国计算机学会数据库专委会委员,中国计算机学会信息系统专委会委员,全国工业大数据行业产教融合共同体特聘专家,入选“2021年高校计算机专业优秀教师奖励计划”,荣获“2022年福建省高等教育教学成果奖特等奖(个人排名第一)”和“2018年福建省高等教育教学成果奖二等奖(个人排名第一)”,编著出版13本大数据系列教材,被国内500多所高校采用,建设了国内高校首个大数据课程公共服务平台,平台累计网络访问量超过2500万次,成为全国高校大数据教学知名品牌,主持的课程《大数据技术原理与应用》获评“2018年国家精品在线开放课程”和“2020年国家级线上一流本科课程”,主持的课程《Spark编程基础》获评“2021年国家级线上一流本科课程”。建设的大数据系列MOOC课程入选“2023年教育部国家智慧教育公共服务平台应用典型案例”。
【本书特色】
1.容易开展上机实践操作。本书采用Linux系统搭建实验环境,以Python作为编程语言,入门门槛低,很容易完成书上的各种上机实验。同时,也可以在Windows系统中开展教学(不使用Linux系统)。
2.包含丰富的实验案例。数据采集与预处理是一门注重培养学生动手能力的课程,为了提高学生的动手能力,全书提供了丰富的实验案例。
3.提供丰富的教学配套资源。为了帮助高校一线教师更好地开展教学工作,本书配套了丰富的教学资源,如讲义PPT、教学大纲、教案、实验手册以及在线自主学习平台等。
【教材交流群】
如果您是高校教师,您可以加入QQ群(群号:916443807,需要提供高校和姓名进行验证),在群中可以交流各种大数据教学问题。
【下载专区】
“下载专区”提供了与教材配套的各种资源的下载,包括讲义PPT、教学大纲、教案、软件、代码、数据集、实验答案、大数据实验环境虚拟机镜像(支持一键导入1分钟生成实验环境)等。这些资源(除软件外)的版权归作者林子雨所有,侵权必究。高校教师可以免费下载这些资源用于教学用途。
“下载专区”的百度网盘链接是:
链接: https://pan.baidu.com/s/1MBvdjZN4vywYhivzOEL66w?pwd=ziyu 提取码: ziyu
提取码:ziyu
【500道题库】
制作了与教材配套的500道题库(第1版教材题库,同样适用于第2版教材),点击这里获取题库。
【课程思政案例】
请访问第1版教材的课程思政案例,同样适用于第2版教材。
【教材目录】
第1章 概述
1.1 数据
数据的概念、数据类型、数据组织形式
数据的价值、数据爆炸
1.2 数据分析过程
1.3 数据采集与预处理的任务
1.4 数据采集
数据采集概念、数据采集的三大要点、数据采集的数据源、数据采集方法
1.5 数据清洗
数据清洗的应用领域、数据清洗的实现方式、数据清洗的内容
数据清洗的注意事项、数据清洗的基本流程、数据清洗的评价标准
1.6 数据集成
1.7 数据转换
数据转换策略、平滑处理、规范化处理
1.8 数据规约
1.9 数据脱敏
第2章 大数据实验环境搭建
2.1 Linux系统的安装和使用
下载安装文件、Linux系统的安装方式、安装Linux虚拟机、创建hadoop用户、在Windows和Linux虚拟机之间互相复制文件、使用FTP实现Windows和Linux之间的文件传输、vim编辑器的安装和使用、使用中文输入法、常用的Linux命令、文件解压缩、目录的权限、更新APT、Linux系统的一些使用技巧
2.2 Python的安装和使用
Python简介、Python的安装、Python的基本使用方法、Python基础语法知识
Python第三方模块的安装
2.3 JDK的安装
2.4 Hadoop的安装和使用
Hadoop简介、安装Hadoop前的准备工作、安装Hadoop的三种模式、下载Hadoop安装文件、伪分布式模式配置、分布式文件系统HDFS、HDFS的基本使用方法
2.5 MySQL数据库的安装和使用
关系数据库、关系数据库标准语言SQL、安装MySQL、MySQL数据库的使用方法
使用Python操作MySQL数据库(连接数据库、创建表、插入数据、修改数据、删除数据)
2.6 MongoDB的安装和使用
MongoDB简介、安装MongoDB6.0、MongoDB基础操作、使用Python操作MongoDB
2.7 Redis的安装和使用
Redis简介、安装Redis、Redis操作实例、使用Python操作Redis
第3章 网络数据采集
3.1 网络爬虫概述
什么是网络爬虫、网络爬虫的类型、反爬机制、爬取策略制定
3.2 网页基础知识
超文本和HTML、HTTP
3.3 用Python实现HTTP请求
urllib模块、urllib3模块、requests模块
3.4 定制requests
传递URL参数、定制请求头、网络超时
3.5 解析网页
BeautifulSoup简介、BeautifulSoup四大对象、遍历文档树、搜索文档树CSS选择器
3.6 综合实例
采集网页数据保存到文本文件、采集网页数据保存到MySQL数据库、采集网页数据保存到MongoDB数据库、采集网页数据保存到Redis数据库
3.7 Scrapy框架
Scrapy框架概述、XPath语言、Scrapy框架应用实例
3.8 通过JSON接口爬取网站数据
为什么选择JSON接口、通过JSON接口爬取数据的步骤、实例
第4章 分布式消息系统Kafka
4.1 Kafka简介
Kafka的特性、Kafka的应用场景、Kafka的消息传递模式
4.2 Kafka在大数据生态系统中的作用
4.3 Kafka与Flume的区别与联系
4.4 Kafka相关概念
4.5 Kafka的安装和使用
4.6 使用Python操作Kafka
4.7 Kafka与MySQL的组合使用
4.8 Kafka采集数据保存到MongoDB中
第5章 日志采集系统Flume
5.1 Flume简介
5.2 Flume的安装和使用
5.3 Flume和Kafka的组合使用
Flume采集NetCat数据到Kafka、Flume采集文件数据到Kafka、Flume采集MySQL数据到Kafka
5.4 采集日志文件到HDFS
采集目录到HDFS、采集文件到HDFS
5.5 采集MySQL数据到HDFS
5.6 Flume多数据源应用实例
第6章 数据仓库中的数据集成
6.1 数据仓库概念
传统的数据仓库、实时主动数据仓库
6.2 数据集成
数据集成方式、数据分发方式、数据集成技术
6.3 ETL
ETL简介、ETL基本模块、ETL模式、ETL工具
6.4 CDC
特性、组成、具体应用场景、需要考虑的问题
第7章 ETL工具Kettle
7.1 Kettle的基本概念
7.2 Kettle的基本功能
7.3 安装Kettle
7.4 数据抽取
把文本文件导入到Excel文件中、把文本文件导入MySQL数据库中
把Excel文件导入到MySQL数据库中
7.5 数据清洗与转换
使用Kettle实现数据排序、在Kettle中用正则表达式清洗数据
使用Kettle去除缺失值、使用Kettle转化MySQL数据库中的数据
7.6 数据加载
把本地文件加载到HDFS中、把HDFS文件加载到MySQL数据库中
第8章 使用pandas进行数据清洗
8.1 NumPy的基本使用方法
数组创建、数组索引和切片、数组运算、数组对象的常用函数
8.2 pandas数据结构
Series、DataFrame、索引对象
8.3 pandas导入导出数据
Excel文件、CSV文件、TXT文件、MySQL数据库
8.4 基本功能
数据拆分与合并、重新索引、丢弃指定轴上的项、索引、选取和过滤
算术运算、DataFrame和Series之间的运算、函数应用和映射
排序和排名、分组、其他常用函数
8.5 汇总和描述统计
与描述统计相关的函数、唯一值、值计数以及成员资格
8.6 处理缺失数据
检查缺失值、清理/填充缺失值、排除缺失值
8.7 清洗格式内容
删除字符串的空格、大小写转换
8.8 综合实例
Matplotlib的使用方法、实例1:对食品数据集进行基本操作、实例2:对电影数据集进行清洗、实例3:百度搜索指数分析、实例4:B站数据分析、实例5:电影评分数据分析、实例6:App行为数据预处理