Python数据分析与挖掘实战(第2版)
上QQ阅读APP看书,第一时间看更新

前言

为什么要写这本书

LinkedIn通过对全球超过3.3亿用户的工作经历和技能进行分析后得出,在目前炙手可热的25项技能中,数据挖掘人才需求排名第一。那么数据挖掘是什么呢?

数据挖掘是从大量数据(包括文本)中挖掘出隐含的、先前未知的、对决策有潜在价值的关系、模式和趋势,并用这些知识和规则建立用于决策支持的模型,提供预测性决策支持的方法、工具和过程。数据挖掘有助于企业发现业务的趋势,揭示已知的事实,预测未知的结果,因此,数据挖掘已成为企业保持竞争力的必要方法。

与国外相比,我国信息化程度仍不算高,企业内部信息也不完整,零售、银行、保险、证券等行业对数据挖掘的应用还不太理想。但随着市场竞争的加剧,各行业对数据挖掘技术的需求越来越强烈,可以预计,未来几年各行业的数据分析应用一定会从传统的统计分析发展到大规模的数据挖掘应用。在大数据时代,数据过剩、人才短缺,数据挖掘专业人才的培养将离不开专业知识和职业经验积累。所以,本书注重数据挖掘理论与项目案例实践相结合,让读者获得真实的数据挖掘学习与实践环境,更快、更好地学习数据挖掘知识并积累职业经验。

总的来说,随着云时代的来临,大数据技术将具有越来越重要的战略意义。大数据已经渗透到每一个行业和业务职能领域,逐渐成为重要的生产要素,人们对于海量数据的运用将预示着新一轮生产率增长和消费者盈余浪潮的到来。大数据分析技术将帮助企业用户在合理的时间内攫取、管理、处理、整理海量数据,为企业经营决策提供积极帮助。大数据分析作为数据存储和挖掘分析的前沿技术,广泛应用于物联网、云计算、移动互联网等战略性新兴产业。虽然目前大数据在国内还处于初级阶段,但是其商业价值已经显现出来,特别是有实践经验的大数据分析人才更是各企业争夺的焦点。为了满足日益增长的大数据分析人才需求,很多高校开始尝试开设不同程度的大数据分析课程。“大数据分析”作为大数据时代的核心技术,必将成为高校数学与统计学专业的重要课程之一。

第2版与第1版的区别

本书在第1版的基础上进行了代码与内容的全方位升级。在代码方面,将整书代码由Python 2升级至Python 3.6。在内容方面,对基础篇和实战篇均做了升级。

基础篇具体升级内容如下。

❑ 第1章增加了章节的引言;修改了1.5节中对TipDM开源数据挖掘建模平台的介绍。

❑ 第2章修改了2.4节中对配套附件的说明。

❑ 第3章增加3.2节所有图形绘制的代码。

❑ 第4章修改了4.1.1节中对牛顿插值法原理的描述。

❑ 第5章修改了5.1.3节中对逻辑回归模型的评价和相关解释;5.2.4节中更新了图5-17。

实战篇具体升级内容如下。

❑ 第6章为原书第13章,新增了对Lasso回归方法、灰色预测算法、SVR算法原理的介绍;将原书的神经网络算法改为SVR算法;删除增值税预测模型、营业税预测模型、企业所得税预测模型、个人所得税预测模型和政府性基金收入预测模型的内容;修改了拓展思考。

❑ 第7章增加了章节的引言;7.2.2节增加了分布分析;7.2.3节增加了RFM模型的介绍;7.2.4节增加了客户分群雷达图的绘制代码。

❑ 新增“第8章商品零售购物篮分析”一章。

❑ 第9章增加了章节的引言;9.2.2节增加了数据预处理的Python实现代码;9.2.3节中将原书的支持向量机算法改为决策树算法。

❑ 第10章增加了章节的引言;原书的“10.2.1数据抽取”改为“10.2.1数据探索分析”,并增加了有无水流和水流量属性的探索分析;10.2.2节增加了属性构造的Python实现代码,原书数据清洗的内容移到属性构造中实现。

❑ 第11章为原书第12章,增加了章节的引言;11.2.3节删除了网页排名的内容;11.2.5节优化了基于协同过滤算法的Python实现代码,新增了模型评价的代码,并修改了模型评价的描述。

❑ 第12章为原书第15章,增加了章节的引言;删除原书“15.2.1评论数据采集”的内容;12.2.1节优化了预处理的方法,并增加了Python实现代码;12.2.2节优化了分词的方法,并增加了Python实现代码;“12.2.3构建模型”修改了情感倾向分析的描述,增加了寻找最优主题数的内容,以及相关的Python实现代码。

❑ 删除原书“第6章电力窃漏电用户自动识别”“第8章中医证型关联规则挖掘”“第11章应用系统负载分析与磁盘容量预测”“第14章基于基站定位数据的商圈分析”这4章。

此外,本版本还额外增加了提高篇,即“第13章基于Python引擎的开源数据挖掘建模平台(TipDM)”,基于开源数据挖掘建模平台(TipDM)实现案例,不仅能够帮助企业建立自己的数据挖掘平台,而且能辅助编程能力较弱的读者更好地理解案例。

本书特色

本书作者从实践出发,结合大量数据挖掘工程案例及教学经验,以真实案例为主线,深入浅出地介绍了数据挖掘建模过程中的有关任务:数据探索、数据预处理、分类与预测、聚类分析、时序预测、关联规则挖掘、智能推荐、偏差检测等。因此,本书的编排以解决某个应用的挖掘目标为前提,先介绍案例背景,提出挖掘目标,再阐述分析方法与过程,最后完成模型构建。在介绍建模的过程中同时穿插操作训练,把相关的知识点嵌入相应的操作过程中。为方便读者轻松获取真实的实验环境,本书使用大家熟知的Python语言对样本数据进行处理,以进行挖掘建模。

为了帮助读者更好地使用本书,本书提供配套的原始数据文件、Python程序代码,读者可以从“泰迪杯”数据挖掘挑战赛网站(http://www.tipdm.org/tj/1615.jhtml)免费下载。为方便教师授课,本书还提供了PPT课件,教师可到网址http://www.tipdm.org/tj/840.jhtml咨询获取。

本书适用对象

开设数据挖掘课程的高校的教师和学生。

目前,国内不少高校将数据挖掘引入本科教学中,在数学、计算机、自动化、电子信息、金融等专业开设了数据挖掘技术的相关课程,但这一课程的教学仍然主要限于理论介绍。单纯的理论教学过于抽象,学生理解起来往往比较困难,教学效果也不甚理想。本书提供的基于实战案例和建模实践的教学,能够使师生充分发挥互动性和创造性,理论联系实际,使师生获得最佳的教学效果。

❑ 需求分析及系统设计人员。

这类人员可以在理解数据挖掘原理及建模过程的基础上,结合数据挖掘案例完成精确营销、客户分群、交叉销售、流失分析、客户信用记分、欺诈发现、智能推荐等数据挖掘应用的需求分析和设计。

❑ 数据挖掘开发人员。

这类人员可以在理解数据挖掘应用需求和设计方案的基础上,结合本书提供的基于第三方接口快速完成数据挖掘应用的编程实现。

❑ 从事数据挖掘应用研究的科研人员。

许多科研院所为了更好地管理科研工作,纷纷开发了适应自身特点的科研业务管理系统,并在使用过程中积累了大量的科研信息数据。但是,这些科研业务管理系统一般没有对数据进行深入分析,对数据所隐藏的价值也没有充分挖掘利用。科研人员需要利用数据挖掘建模工具及有关方法论来深挖科研信息的价值,从而提高科研水平。

❑ 关注高级数据分析的人员。

业务报告和商业智能解决方案对有关人员了解过去和现在的状况是非常有用的。同时,数据挖掘的预测分析解决方案还能使这类人员预见未来的发展状况,让他们所在的机构能够先发制人,而不是处于被动。因为数据挖掘的预测分析解决方案将复杂的统计方法和机器学习技术应用到数据之中,通过预测分析技术来揭示隐藏在交易系统或企业资源计划(ERP)、结构数据库和普通文件中的模式和趋势,从而为这类人员的决策提供科学依据。

如何阅读本书

本书共13章,分为基础篇、实战篇、提高篇。基础篇介绍了数据挖掘的基本原理;实战篇介绍了一些真实案例,通过对案例深入浅出的剖析,使读者在不知不觉中获得数据挖掘项目经验,同时快速领悟看似难懂的数据挖掘理论;提高篇介绍了一个基于Python引擎的开源数据挖掘建模平台,通过平台去编程、拖曳式的操作,向读者展示了平台流程化的思维,使读者加深对数据挖掘流程的理解。读者在阅读过程中,应充分利用随书配套的案例建模数据,借助相关的数据挖掘建模工具,通过上机实验,快速理解相关知识与理论。

基础篇(第1~5章)

第1章的主要内容是数据挖掘基础;第2章对本书所用到的数据挖掘建模工具Python语言进行了简明扼要的说明;第3~5章对数据挖掘的建模过程,包括数据探索、数据预处理及挖掘建模的常用算法与原理进行了介绍。

实战篇(第6~12章)

重点对数据挖掘技术在金融、航空、零售、能源、制造和电商等行业的应用进行了分析。在案例结构组织上,本书是按照先介绍案例背景与挖掘目标,再阐述分析方法与过程,最后完成模型构建的顺序进行的,在建模过程关键环节,穿插程序实现代码。最后通过上机实践,加深对案例应用中的数据挖掘技术的理解。

提高篇(第13章)

重点讲解了基于Python引擎的开源数据挖掘建模平台(TipDM)的使用方法,先介绍了平台每个模块的功能,再以航空公司客户价值分析案例为例,介绍如何使用平台快速搭建数据分析与挖掘工程,展示平台去编程化、流程化的特点。

勘误和支持

我们已经尽最大努力避免在文本和代码中出现错误,但是由于水平有限,编写时间仓促,书中难免出现一些疏漏和不足的地方。如果你有更多的宝贵意见,欢迎在泰迪学社微信公众号回复“图书反馈”进行反馈。更多有关本系列图书的信息可以在“泰迪杯”数据挖掘挑战赛网站(http://www.tipdm.org/tj/index.jhtml)查阅。

张良均