《R语言数据挖掘(第2版)》教学课件—第十章R的关联分析:揭示数据
- 格式:ppt
- 大小:573.50 KB
- 文档页数:25
⽤R实现关联分析关联分析多年前,新的互联⽹销售开始在⽹上卖书,随着时间的推移,积累了⼀些关于客户购买书籍的信息。
使⽤关联分析,可以识别⼀些客户有相似兴趣的书,使⽤⽤户购买信息,建⽴相应的推荐系统。
关联分析是发现数据集中对象或者属性间的相关性,这些相关性可以⽤关联规则来表达。
这个⽅法⼀直成功的应⽤于⼤的事物数据库,⽐如购物车和线上客户的购买。
关联分析是数据挖掘核⼼算法之⼀。
对于线上卖书的实例,原始数据作为建模的基础识别数据。
⽐如,⼀个⽤户购买了两本特定的的书,也很有可能购买相关的另外⼀本特定的书。
原始数据可能表明所有⽤户购买前两本书的的概率是0.5%,但是70%的⼈会购买第三本。
作为⼀个企业,我们将利⽤观察到的这个信息,对购买前两种书的客户投⼊第三种书的⼴告。
关联分析输⼊数据的⼀般类型由事物型数据构成,如在超市购物车中的商品信息、单机购买的书和光盘、病⼈收到的药物治疗和测试数据等。
这⼀篇简单介绍了关联分析的内容,以及在Rattle和R中的实现。
1.知识概要关联规则的表达即是表明事物间的相关性,假设每项事物由⼀系列的项⽬组成(可以表⽰为{A,B,C,D,E,F}),⽬的是确定⼀起出现在多个购物车中的项⽬集合(可能项⽬{A,C,F}⼀起出现在多个购物车当中)这⾥我们称之为项集。
⽐如我们确认规则A,F=>C,意思是当A和F在事物中出现的时候(购物车中出现A和F),那么C通常也会出现。
关联分析输出的模型可以由⼀系列的关联规则表⽰,关联规则的⼀般格式表⽰为: A -->CA和C都是集合当中的⼀项,通常我们将项⽬看作特定的书籍,⽐如特定的杂货店项⽬。
例⼦可能是:⽜奶 ---> ⾯包啤酒&坚果 --->马铃薯薯⽚史莱克1 --->史莱克2&史莱克3项⽬的内容可以概括为特定的属性/值的组合。
关联分析的内容可以应⽤于许多不同的数据集。
使⽤weather数据集,关联规则的表达如下:WindDir3pm=NNW ---> RainToday = No.2.启发式搜索关联分析算法的基础是⽣成频繁项集。
用R语言进行关联分析用R语言进行关联分析关联是两个或多个变量取值之间存在的一类重要的可被发现的某种规律性。
关联分析目的是寻找给定数据记录集中数据项之间隐藏的关联关系,描述数据之间的密切度。
几个基本概念1. 项集这是一个集合的概念,在一篮子商品中的一件消费品即为一项(Item),则若干项的集合为项集,如{啤酒,尿布}构成一个二元项集。
2. 关联规则一般记为的形式,X为先决条件,Y为相应的关联结果,用于表示数据内隐含的关联性。
如:,表示购买了尿布的消费者往往也会购买啤酒。
关联性强度如何,由三个概念——支持度、置信度、提升度来控制和评价。
例:有10000个消费者购买了商品,其中购买尿布1000个,购买啤酒2000个,购买面包500个,同时购买尿布和面包800个,同时购买尿布和面包100个。
3. 支持度(Support)支持度是指在所有项集中{X, Y}出现的可能性,即项集中同时含有X和Y的概率:该指标作为建立强关联规则的第一个门槛,衡量了所考察关联规则在“量”上的多少。
通过设定最小阈值(minsup),剔除“出镜率”较低的无意义规则,保留出现较为频繁的项集所隐含的规则。
设定最小阈值为5%,由于{尿布,啤酒}的支持度为800/10000=8%,满足基本输了要求,成为频繁项集,保留规则;而{尿布,面包}的支持度为100/10000=1%,被剔除。
4. 置信度(Confidence)置信度表示在先决条件X发生的条件下,关联结果Y发生的概率:这是生成强关联规则的第二个门槛,衡量了所考察的关联规则在“质”上的可靠性。
相似的,我们需要对置信度设定最小阈值(mincon)来实现进一步筛选。
具体的,当设定置信度的最小阈值为70%时,置信度为800/1000=80%,而的置信度为800/2000=40%,被剔除。
5. 提升度(lift)提升度表示在含有X的条件下同时含有Y的可能性与没有X这个条件下项集中含有Y的可能性之比:该指标与置信度同样衡量规则的可靠性,可以看作是置信度的一种互补指标。
【原创】附代码数据有问题到淘宝找“大数据部落”就可以了关联分析目录一、概括 (1)二、数据清洗 (1)2.1公立学费(NPT4_PUB) (1)2.2毕业率(Graduation.rate) (1)2.3贷款率(GRAD_DEBT_MDN_SUPP) (2)2.4偿还率(RPY_3YR_RT_SUPP) (2)2.5毕业薪水(MD_EARN_WNE_P10)。
(3)2.6 私立学费(NPT4_PRIV) (3)2.7 入学率(ADM_RATE_ALL) (4)三、Apriori算法 (4)3.1 相关概念 (5)3.2 算法流程 (6)3.3 优缺点 (7)四、模型建立及结果 (8)4.1 公立模型 (8)4.2 私立模型 (11)一、概括对7703条样本数据,分别根据公立学费和私立学费差异,建立公立模型和私立模型,进行关联分析。
二、数据清洗2.1公立学费(NPT4_PUB)此字段,存在4个负值,与实际情况不符,故将此四个值重新定义为NULL。
重新定义后,NULL值的占比为75%,占比很大,不能直接将NULL值删除或者进行插补,故将NULL单独作为一个取值分组。
对非NULL的值按照等比原则进行分组,分组结果如下:A:[0,5896]B:(5896,7754]C:(7754, 9975]D:(9975, 13819]E:(13819, +]分组后取值分布为:2.2毕业率(Graduation.rate)将PrivacySuppressed值重新定义为NULL,重新定义后,NULL值的占比为20%,占比较大,不适合直接删除或进行插补,故将NULL单独作为一个取值分组。
对非NULL值根据等比原则进行分组,分组结果如下:A:[0,0.29]B:(0.29,0.47]C:(0.47, 0.61]D:(0.61, 0.75]E:(0.75, +]分组后取值分布为:2.3贷款率(GRAD_DEBT_MDN_SUPP)将PrivacySuppressed值重新定义为NULL,重新定义后,NULL值的占比为20%,占比较大,不适合直接删除或进行插补,故将NULL单独作为一个取值分组。
教你用R进行数据挖掘R是一种广泛用于数据分析和统计计算的强大语言,于上世纪90年代开始发展起来。
得益于全世界众多爱好者的无尽努力,大家继而开发出了一种基于R但优于R基本文本编辑器的R Studio(用户的界面体验更好)。
也正是由于全世界越来越多的数据科学社区和用户对R包的慷慨贡献,让R语言在全球范围内越来越流行。
其中一些R包,例如MASS,SparkR,ggplot2,使数据操作,可视化和计算功能越来越强大。
我们所说的机器学习和R有什么关系呢?我对R的第一印象是,它只是一个统计计算的一个软件。
但是后来我发现R有足够的能力以一个快速和简单的方式来实现机器学习算法。
这是用R来学习数据科学和机器学习的完整教程,读完本文,你将有使用机器学习的方法来构建预测模型的基本能力。
注:这篇文章对于之前没有很多数据科学知识的同学们是特别值得一看的,同时掌握一定的代数和统计知识将会更有益于您的学习。
一、初识R语言1、为什么学R ?事实上,我没有编程经验,也没有学过计算机。
但是我知道如果要学习数据科学,一个人必须学习R或Python作为开始学习的工具。
我选择了前者,同时在学习过程中我发现了一些使用R的好处:∙用R语言编码非常的简单;∙R是一个免费的开源软件,同时它可以直接在官网上下载;∙R语言中有来自于全世界爱好者贡献的即时访问超过7800个用于不同计算的R包。
∙R语言还有遍布全世界的学习社区及论坛,你能很轻松的获取帮助;∙我们凭借R包能够获得高性能的计算体验;∙它是,数据分析公司高度寻求技能之一。
2、如何安装R / Rstudio?你可以https:///官网下载并安装R,需要注意的是R的更新速度很快,下载新版本的体验会更好一些。
另外,我建议你从RStudio开始,因为RStudio的界面编程体验更好一些。
你可以通过https:///products/rstudio/download/ 在“支持的平台上安装”部分中, 根据您的操作系统选择您需要的安装程序。