前 言
为什么要写这本书
LinkedIn对全球超过3.3亿用户的工作经历和技能进行分析后得出,目前最受关注的25项技能中,对数据挖掘人才的需求排名第一。那么数据挖掘是什么?
数据挖掘是从大量数据(包括文本)中挖掘出隐含的、先前未知的、对决策有潜在价值的关系、模式和趋势,并用这些知识和规则建立用于决策支持的模型,提供预测性决策支持的方法、工具和过程。数据挖掘有助于企业发现业务的发展趋势,揭示已知的事实,预测未知的结果,因此“数据挖掘”已成为企业保持竞争力的必要方法。
但跟国外相比,我国由于信息化程度不太高,企业内部信息不完整,零售业、银行、保险、证券等对数据挖掘的应用并不太理想。但随着市场竞争的加剧,各行业对数据挖掘技术的意愿越来越强烈,可以预计,未来几年各行业的数据分析应用一定会从传统的统计分析发展到大规模数据挖掘应用。在大数据时代,数据过剩、人才短缺,数据挖掘专业人才的培养又需要专业知识和职业经验积累。所以,本书注重数据挖掘理论与项目案例实践相结合,可以让读者获得真实的数据挖掘学习与实践环境,更快、更好地学习数据挖掘知识与积累职业经验。
总体来说,随着云时代的来临,大数据技术将具有越来越重要的战略意义。大数据已经渗透到每一个行业和业务职能领域,逐渐成为重要的生产要素,人们对于海量数据的运用预示着新一轮生产率增长和消费者盈余浪潮的到来。大数据分析技术将帮助企业用户在合理的时间内攫取、管理、处理、整理海量数据,为企业经营决策提供积极的帮助。大数据分析作为数据存储和挖掘分析的前沿技术,广泛应用于物联网、云计算、移动互联网等战略性新兴产业。虽然大数据目前在国内还处于初级阶段,但是其商业价值已经显现出来,特别是有实践经验的大数据分析人才更是各企业争夺的热门。为了满足日益增长的对大数据分析人才的需求,很多大学开始尝试开设不同程度的大数据分析课程。“大数据分析”作为大数据时代的核心技术,必将成为高校数学与统计学专业的重要课程之一。
本书特色
笔者从实践出发,结合大量数据挖掘工程案例与教学经验,以真实案例为主线,深入浅出地介绍数据挖掘建模过程中的有关任务:数据探索、数据预处理、分类与预测、聚类分析、时序预测、关联规则挖掘、智能推荐、偏差检测等。因此,本书的编排以解决某个应用的挖掘目标为前提,先介绍案例背景,提出挖掘目标,再阐述分析方法与过程,最后完成模型构建,在介绍建模过程中会穿插操作训练,把相关的知识点嵌入相应的操作过程中。为方便读者轻松地获取一个真实的实验环境,本书使用大家熟知的R语言对样本数据进行处理以进行挖掘建模。
本书适用对象
开设有数据挖掘课程的高校教师和学生。
目前国内不少高校将数据挖掘引入本科教学中,在数学、计算机、自动化、电子信息、金融等专业开设了数据挖掘技术相关的课程,但目前这一课程的教学仍然主要限于理论介绍。因为单纯的理论教学过于抽象,学生理解起来往往比较困难,教学效果也不甚理想。本书提供的基于实战案例和建模实践的教学,能够使师生充分发挥互动性和创造性,做到理论联系实际,使师生获得最佳的教学效果。
需求分析及系统设计人员。
这类人员可以在理解数据挖掘原理及建模过程的基础上,结合数据挖掘案例完成精确营销、客户分群、交叉销售、流失分析、客户信用记分、欺诈发现、智能推荐等数据挖掘应用的需求分析和设计。
数据挖掘开发人员。
这类人员可以在理解数据挖掘应用需求和设计方案的基础上,结合本书提供的基于第三方的接口快速完成数据挖掘应用的编程实现。
进行数据挖掘应用研究的科研人员。
许多科研院所为了更好地对科研工作进行管理,纷纷开发了适应自身特点的科研业务管理系统,并在使用过程中积累了大量的科研信息数据。但是,这些科研业务管理系统一般没有对这些数据进行深入分析,对数据所隐藏的价值并没有充分挖掘利用。科研人员需要利用数据挖掘建模工具及有关方法论来深挖科研信息的价值,从而提高科研水平。
关注高级数据分析的人员。
业务报告和商业智能解决方案对于了解过去和现在的状况可能是非常有用的。但是,数据挖掘的预测分析解决方案还能使这类人员预见未来的发展状况,让他们的机构能够先发制人,而不是处于被动。因为数据挖掘的预测分析解决方案可将复杂的统计方法和机器学习技术应用到数据之中,通过使用预测分析技术来揭示隐藏在交易系统或企业资源计划(ERP)、结构数据库和普通文件中的模式与趋势,从而为这类人员做决策提供科学依据。
如何阅读本书
本书共16章,分三个部分:基础篇、实战篇、提高篇。基础篇介绍了数据挖掘的基本原理,实战篇介绍了多个真实案例,通过对案例深入浅出的剖析,使读者在不知不觉中获得数据挖掘项目经验,同时快速领悟看似难懂的数据挖掘理论。读者在阅读过程中,应充分利用随书配套的案例建模数据,借助相关的数据挖掘建模工具,通过上机实验快速理解相关知识与理论。
第一部分是基础篇(第1~5章),第1章的主要内容是数据挖掘概述;第2章对本书所用到的数据挖掘建模工具——R语言进行了简明扼要的说明;第3~5章对数据挖掘的建模过程,包括数据探索、数据预处理及挖掘建模的常用算法与原理进行了介绍。
第二部分是实战篇(第6~15章),重点对数据挖掘技术在电力、航空、医疗、互联网、生产制造以及公共服务等行业的应用进行了分析。在案例结构组织上,本书是按照先介绍案例背景与挖掘目标,再阐述分析方法与过程,最后完成模型构建的顺序进行的。在建模过程的关键环节,穿插程序实现代码。最后通过上机实践,加深读者数据挖掘技术在案例应用中的理解。
第三部分是提高篇(第16章),介绍了基于R语言二次开发的数据挖掘应用软件——TipDM数据挖掘建模工具,并以此工具为例详细介绍了基于R语言完成数据挖掘二次开发的各个步骤,使读者体验到通过R语言实现数据挖掘二次开发的强大魅力。
勘误和支持
除封面署名外,参加本书编写工作的还有樊哲、陈庚、卢丹丹、魏润润、范正丰、徐英刚、廖晓霞、刘名军、李成华、刘丽君等。由于笔者的水平有限,编写时间仓促,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。
致谢
本书编写过程中,得到了广大企事业单位科研人员的大力支持!在此谨向广东电力科学研究院、广西电力科学研究院、广东电信规划设计院、珠江/黄海水产研究所、轻工业环境保护研究所、华南师范大学、广东工业大学、广东技术师范学院、南京中医药大学、华南理工大学、湖南师范大学、韩山师范学院、广东石油化工学院、中山大学、广州泰迪智能科技有限公司、武汉泰迪智慧科技有限公司等单位给予支持的专家及师生致以深深的谢意。
张良均
目 录
基 础 篇
第1章 数据挖掘基础
1.1 某知名连锁餐饮企业的困惑
1.2 从餐饮服务到数据挖掘
1.3 数据挖掘的基本任务
1.4 数据挖掘建模过程
1.4.1 定义挖掘目标
1.4.2 数据取样
1.4.3 数据探索
1.4.4 数据预处理
1.4.5 挖掘建模
1.4.6 模型评价
1.5 常用数据挖掘建模工具
1.6 小结
第2章 R语言简介
2.1 R安装
2.2 R使用入门
2.2.1 R操作界面
2.2.2 RStudio窗口介绍
2.2.3 R常用操作
2.3 R数据分析包
2.4 配套附件使用设置
2.5 小结
第3章 数据探索
3.1 数据质量分析
3.1.1 缺失值分析
3.1.2 异常值分析
3.1.3 一致性分析
3.2 数据特征分析
3.2.1 分布分析
3.2.2 对比分析
3.2.3 统计量分析
3.2.4 周期性分析
3.2.5 贡献度分析
3.2.6 相关性分析
3.3 R语言主要数据探索函数
3.3.1 统计特征函数
3.3.2 统计作图函数
3.4 小结
第4章 数据预处理
4.1 数据清洗
4.1.1 缺失值处理
4.1.2 异常值处理
4.2 数据集成
4.2.1 实体识别
4.2.2 冗余属性识别
4.3 数据变换
4.3.1 简单函数变换
4.3.2 规范化
4.3.3 连续属性离散化
4.3.4 属性构造
4.3.5 小波变换
4.4 数据规约
4.4.1 属性规约
4.4.2 数值规约
4.5 R语言主要数据预处理函数
4.6 小结
第5章 挖掘建模
5.1 分类与预测
5.1.1 实现过程
5.1.2 常用的分类与预测算法
5.1.3 回归分析
5.1.4 决策树
5.1.5 人工神经网络
5.1.6 分类与预测算法评价
5.1.7 R语言主要分类与预测算法函数
5.2 聚类分析
5.2.1 常用聚类分析算法
5.2.2 K-Means聚类算法
5.2.3 聚类分析算法评价
5.2.4 R语言主要聚类分析算法函数
5.3 关联规则
5.3.1 常用关联规则算法
5.3.2 Apriori算法
5.4 时序模式
5.4.1 时间序列算法
5.4.2 时间序列的预处理
5.4.3 平稳时间序列分析
5.4.4 非平稳时间序列分析
5.4.5 R语言主要时序模式算法函数
5.5 离群点检测
5.5.1 离群点检测方法
5.5.2 基于模型的离群点检测方法
5.5.3 基于聚类的离群点检测方法
5.6 小结
实 战 篇
第6章 电力窃漏电用户自动识别
6.1 背景与挖掘目标
6.2 分析方法与过程
6.2.1 数据抽取
6.2.2 数据探索分析
6.2.3 数据预处理
6.2.4 构建专家样本
6.2.5 模型构建
6.3 上机实验
6.4 拓展思考
6.5 小结
第7章 航空公司客户价值分析
7.1 背景与挖掘目标
7.2 分析方法与过程
7.2.1 数据抽取
7.2.2 数据探索分析
7.2.3 数据预处理
7.2.4 模型构建
7.3 上机实验
7.4 拓展思考
7.5 小结
第8章 中医证型关联规则挖掘
8.1 背景与挖掘目标
8.2 分析方法与过程
8.2.1 数据获取
8.2.2 数据预处理
8.2.3 模型构建
8.3 上机实验
8.4 拓展思考
8.5 小结
第9章 基于水色图像的水质评价
9.1 背景与挖掘目标
9.2 分析方法与过程
9.2.1 数据预处理
9.2.2 模型构建
9.2.3 水质评价
9.3 上机实验
9.4 拓展思考
9.5 小结
第10章 家用电器用户行为分析与事件识别
10.1 背景与挖掘目标
10.2 分析方法与过程
10.2.1 数据抽取
10.2.2 数据探索分析
10.2.3 数据预处理
10.2.4 模型构建
10.2.5 模型检验
10.3 上机实验
10.4 拓展思考
10.5 小结
第11章 应用系统负载分析与磁盘容量预测
11.1 背景与挖掘目标
11.2 分析方法与过程
11.2.1 数据抽取
11.2.2 数据探索分析
11.2.3 数据预处理
11.2.4 模型构建
11.3 上机实验
11.4 拓展思考
11.5 小结
第12章 电子商务智能推荐服务
12.1 背景与挖掘目标
12.2 分析方法与过程
12.2.1 数据抽取
12.2.2 数据探索分析
12.2.3 数据预处理
12.2.4 模型构建
12.3 上机实验
12.4 拓展思考
12.5 小结
第13章 基于数据挖掘技术的市财政收入分析预测模型252
13.1 背景与挖掘目标
13.2 分析方法与过程
13.2.1 灰色预测与神经网络的组合模型
13.2.2 数据探索分析
13.2.3 模型构建
13.3 上机实验
13.4 拓展思考
13.5 小结
第14章 基于基站定位数据的商圈分析
14.1 背景与挖掘目标
14.2 分析方法与过程
14.2.1 数据抽取
14.2.2 数据探索分析
14.2.3 数据预处理
14.2.4 模型构建
14.3 上机实验
14.4 拓展思考
14.5 小结
第15章 电商产品评论数据情感分析
15.1 背景与挖掘目标
15.2 分析方法与过程
15.2.1 评论数据采集
15.2.2 评论预处理
15.2.3 文本评论分词
15.2.4 模型构建
15.3 上机实验
15.4 拓展思考
15.5 小结
提 高 篇
第16章 基于R语言的数据挖掘二次开发
16.1 混合编程应用体验——TipDM数据挖掘平台
16.2 二次开发过程环境配置
16.3 R语言数据挖掘二次开发实例
16.4 小结
参考资料