R语言与数据分析之十:购物篮分析

提到数据挖掘,我们第一反应就是之前听到的啤酒和尿不湿的故事,该故事就是典型的数据挖掘中的关联规则。购物篮分析区别于传统的线性回归的主要区别为,关联分析针对离散数据;

常见关联规则:

关联规则:牛奶=>鸡蛋【支持度=2%,置信度=60%】

支持度:分析中的全部事务的2%同时购买了牛奶和鸡蛋,需设定域值,来限定规则的产生;

置信度:购买了牛奶的筒子有60%也购买了鸡蛋,需设定域值,来限定规则的产生;

最小支持度阈值和最小置信度阈值:由挖掘者或领域专家设定。

与关联分析相关的专业术语包括:

项集:项(商品)的集合

k-项集:k个项组成的项集

频繁项集:满足最小支持度的项集,频繁k-项集一般记为Lk

强关联规则:满足最小支持度阈值和最小置信度阈值的规则

接下来以两步法为例,揭秘下关联分析的做法:

如下有9个购物篮(T100-T900):两步法先找出所有的频繁项集;第二步再由频繁项集产生强关联规则。

算法步骤:

Step1:扫描D,对每个候选项计数,生成候选1-项集C1,并算出每项的关联度计数(即该项出现的频数);
Step2:定义最小支持度阀值为2(即剔除频数低于2的项),记剩余的项集为L1;
Step3:由L1 两两配对生成新的2-项集C2;
Step4:扫描D,对C2里每个项计数,定义最小支持度阀值为2(即剔除频数低于2的项),记剩余的项集为2-项集L2;
Step5:由L2 两两配对生成新的3-项集C3;
……如此循环,直至出现最大的n-项集结束;

以上述例子为例,图解过程如下:

如图为例,我们计算频繁项集{I1,I2,I5},可以发现I1^I2=>I5,由于{I1,I2,I5}出现了2次,{I1,I2}出现了4次,故置信度为2/4=50%

类似可以算出:

利用R进行购物篮分析,R中关联分析函数为arules,我们采用内置的Groceries的数据集(如下);

Inspect(Groceries)

具体的R语言实现如下:

library(arules)
data(Groceries)
frequentsets=eclat(Groceries,parameter=list(support=0.05,maxlen=10))
inspect(sort(frequentsets,by="support")[1:10]) #根据支持度对求得的频繁项集排序

结果如下:可见所有的关联规则的排名:

接下来以阀值挑选我们的需要的关联项:

rules=apriori(Groceries,parameter=list(support=0.01,confidence=0.5))
inspect(rules)

由此可见购物篮就完成,其中lift是相关度指标,lift=1表示L和R独立,lift越大表明L和R在同一购物篮绝非偶尔现象,更加支持我们的购物篮决策。

时间: 2024-08-29 07:19:40

R语言与数据分析之十:购物篮分析的相关文章

R语言和数据分析十大:购物篮分析

提到数据挖掘,我们的第一个反应是之前的啤酒和尿布的故事听说过,这个故事是一个典型的数据挖掘关联规则.篮分析的传统线性回归之间的主要差别的差别,对于离散数据的相关性分析: 常见的关联规则: 关联规则:牛奶=>卵子[支撑=2%,置信度=60%] 支持度:分析中的所有事务的2%同一时候购买了牛奶和鸡蛋,需设定域值,来限定规则的产生. 置信度:购买了牛奶的筒子有60%也购买了鸡蛋,需设定域值,来限定规则的产生. 最小支持度阈值和最小置信度阈值:由挖掘者或领域专家设定. 与关联分析相关的专业术语包含: 项

Python中的Apriori关联算法-市场购物篮分析

数据科学Apriori算法是一种数据挖掘技术,用于挖掘频繁项集和相关的关联规则.本模块重点介绍什么是关联规则挖掘和Apriori算法,以及Apriori算法的用法.此外,在小型企业场景中,我们将借助Python编程语言构建一个Apriori模型. 什么是关联规则挖掘? 如前所述,Apriori算法用于关联规则挖掘.现在,什么是关联规则挖掘?关联规则挖掘是一种用于识别一组项目之间的频繁模式和关联的技术. 例如,了解客户的购买习惯.通过查找顾客放置在其“购物篮”中的不同商品之间的关联和关联,可以得出

R语言︱异常值检验、离群点分析、异常值处理

在数据挖掘的过程中,数据预处理占到了整个过程的60% 脏数据:指一般不符合要求,以及不能直接进行相应分析的数据 脏数据包括:缺失值.异常值.不一致的值.重复数据及含有特殊符号(如#.¥.*)的数据 数据清洗:删除原始数据集中的无关数据.重复数据.平滑噪声数据.处理缺失值.异常值等 缺失值处理:删除记录.数据插补和不处理 主要用到VIM和mice包 install.packages(c("VIM","mice")) 1.处理缺失值的步骤 步骤: (1)识别缺失数据:

数据挖掘算法之-关联规则挖掘(Association Rule)(购物篮分析)

在各种数据挖掘算法中,关联规则挖掘算是比较重要的一种,尤其是受购物篮分析的影响,关联规则被应用到很多实际业务中,本文对关联规则挖掘做一个小的总结. 首先,和聚类算法一样,关联规则挖掘属于无监督学习方法,它描述的是在一个事物中物品间同时出现的规律的知识模式,现实生活中,比如超市购物时,顾客购买记录常常隐含着很多关联规则,比如购买圆珠笔的顾客中有65%也购买了笔记本,利用这些规则,商场人员可以很好的规划商品摆放问题: 为叙述方便,设R= { I1,I2 ......Im} 是一组物品集,W 是一组事

使用excel进行数据挖掘(8)---- 购物篮分析

在配置环境后,可以使用excel进行数据挖掘. 环境配置问题可参阅: http://blog.csdn.net/xinxing__8185/article/details/46445435 样例 DMAddins_SampleData.xlsx 文件下载地址:http://download.csdn.net/detail/xinxing__8185/8780481 在数据表中,选择table analysis tools sample表,该表中是用户的信息统计,包括婚姻状况,性别,收入,子女,教

R语言基因组数据分析可能会用到的data.table函数整理

R语言data.table包是自带包data.frame的升级版,用于数据框格式数据的处理,最大的特点快.包括两个方面,一方面是写的快,代码简洁,只要一行命令就可以完成诸多任务,另一方面是处理快,内部处理的步骤进行了程序上的优化,使用多线程,甚至很多函数是使用C写的,大大加快数据运行速度.因此,在对大数据处理上,使用data.table无疑具有极高的效率.这里主要介绍在基因组数据分析中可能会用到的函数. fread 做基因组数据分析时,常常需要读入处理大文件,这个时候我们就可以舍弃read.ta

基于R语言的数据分析和挖掘方法总结——描述性统计

1.1 方法简介 描述性统计包含多种基本描述统计量,让用户对于数据结构可以有一个初步的认识.在此所提供之统计量包含: 基本信息:样本数.总和 集中趋势:均值.中位数.众数 离散趋势:方差(标准差).变异系数.全距(最小值.最大值).内四分位距(25%分位数.75%分位数) 分布描述:峰度系数.偏度系数 用户可选择多个变量同时进行计算,亦可选择分组变量进行多组别的统计量计算. 1.2 详细介绍 1.2.1 样本数和总和 1. R语言涉及的方法:length(x) 1.2.2 均值(Mean) 1.

R语言与数据分析之二:绘图

图形展示是最高效且形象的数据描述手段,因此巧妙的图像展示是高质量数据分析报告的必备内容,因此强大的图形展示功能也是统计分析软件的必备功能.R语言提供了强大的吐血展示功能.今天我由简单到复杂分别和小伙伴们分享如何用R语言画出各位想要的图形. 首先罗列下所有可选图形: 1.直方图(hist()):2.散点图(plot()):3.柱状图(barplot());4.饼图(pie());5.箱线图(boxplot());6.星相图(stars());7.脸谱图(faces());8.茎叶图(stem())

R语言与数据分析之四:聚类算法2

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">今天继续和小伙伴们分享聚类算法和R语言的实现,上篇和大家分享了聚类中的距离.类间距离和最古典的层次聚类法,今天和大家分享几个动态聚类算法.</span> 首先和大家分享被评为十大数据挖掘算法之一的K-means 算法(K为分类的个数,mean为平均值,该算法的难点即为K的指点