第1章
R and Data Mining:Examples and Case Studies
简 介
本书主要介绍使用R工具进行数据挖掘,将给出在R中实现数据挖掘功能的许多例子,以及3个真实应用场景的案例。本书适合硕士研究生、研究人员和想要使用R工具进行数据挖掘研究和项目的数据挖掘工程师。我们假定读者已经具备基础的数据挖掘知识,并且接触过R语言。我们希望能够通过这本书鼓励更多的人在他们的研究与应用中使用R进行数据挖掘工作。
本章主要介绍一些关于数据挖掘的基本概念和技术,包括数据挖掘的过程和常用的数据挖掘技术。同时,还将介绍R语言,以及进行数据挖掘时常用的R程序包、函数和任务视图。本章的*后还将介绍本书中将要使用到的几个数据集。
1.1 数据挖掘
数据挖掘是从大量的数据中发现有趣知识的过程[Han and Kamber, 2000]。数据挖掘是一个涉及多个领域的交叉学科,包括统计学、机器学习、信息检索、模式识别以及生物信息学。数据挖掘已经在许多领域中得到了广泛应用,例如零售、金融、通信以及社交媒体行业。
数据挖掘的主要技术包括分类与预测、聚类、离群点检测、关联规则、序列分析、时间序列分析和文本挖掘,同时还包括一些新的技术,例如社交网络分析和情感分析。想要了解更多关于数据挖掘相关技术的详细介绍可以参考有关数据挖掘的教材[Han and Kamber, 2000; Hand et al, 2001; Witten and Frank, 2005]。CRISP-DM(Cross Industry Standard Process For Data Mining,数据挖掘的跨行业标准过程)将一个真实应用中的数据挖掘过程划分为6个主要阶段:业务理解、数据理解、数据预处理、建模、评估和部署。本书的**是建模阶段,其中也有部分章节介绍数据探索和模型评估。读者想要获取更多关于数据挖掘的信息可以参考第15章中的在线资源。
1.2 R
R[R核心开发团队,2012]是一个自由软件,主要用于统计计算和统计制图,它提供了大量的统计和制图工具。R可以简单地通过程序包的形式进行扩展,截至2012年8月1日,CRAN程序包库中已经收藏了大约4000个程序包。更多关于R的详细介绍可以参考《An Introduction to R》(Venables et al., 2010)和《R Language Definition》[R核心开发团队, 2010b],这两本书都可以从CRAN网站上获取。R已经广泛应用于学术界和工业界。
为了帮助用户更快地找到需要使用的R程序包,CRAN提供了任务视图(Task Views),将所有的R程序包按照不同的处理任务组织起来。与数据挖掘相关的几个任务视图是:
机器学习和统计学习。
聚类分析和有限混合模型。
时间序列分析。
多元统计。
空间数据分析。
另一个关于R实现数据挖掘的入门指导是《R Reference Card for Data Mining》,它提供了一套完整的用于数据挖掘的R程序包和函数的索引,并根据功能进行分类。*新的版本可以从http://www.rdatamining.com/docs上下载。
读者想要了解更多关于R的详细信息,可以参考第15章的在线资源。
1.3 数据集
本节简单地介绍本书中将要使用到的数据集。
1.3.1 iris数据集
在许多的科研著作中都在iris数据集上做分类操作。该数据集由3种不同类型的鸢尾花的50个样本数据构成 [Frank and Asuncion,2010]。其中的一个种类与另外两个种类是线性可分离的,后两个种类是非线性可分离的。这个数据集包含了5个属性:
Sepal.Length(花萼长度),单位是cm。
Sepal.Width(花萼宽度),单位是cm。
Petal.Length(花瓣长度),单位是cm。
Petal.Width(花瓣宽度),单位是cm。
种类:Iris Setosa(山鸢尾)、Iris Versicolour(杂色鸢尾),以及Iris Virginica(维吉尼亚鸢尾)。
1.3.2 Bodyfat数据集
Bodyfat数据集由mboost包[Hothorn et al.,2012]提供。该数据集包含71行,每一行代表一个客户的信息。数据集包含10列数值型数据。
age:年龄。
DEXfat:以DXA计算的体脂重,响应变量。
waistcirc:腰围。
hipcirc:臀围。
elbowbreadth:肘宽。
kneebreadth:膝宽。
anthro3a:三项人体测量的对数和。
anthro3b:三项人体测量的对数和。
anthro3c:三项人体测量的对数和。
anthro4:三项人体测量的对数和。
DEXfat的值可通过其他的变量预测得到。