Apriori商品关联分析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apriori商品关联分析相关的知识,希望对你有一定的参考价值。

参考技术A 购物篮分析本质其实就是商品之间的关联分析,因为最初这种关联分析主要是在超市应用广泛,所以后来被人们称为“购物篮分析”。购物篮分析的目的在于在一个数据集中找出项之间的关联关系。比如,购买鞋的顾客,有10%的可能也会买袜子,60%的买面包的顾客,也会买牛奶。

购物篮分析一般在电商和超市行业应用的比较多,在金融服务业,保险业也有应用,对于电商场景,一般应用有这几个部分:

个性化推荐:像我开头的经历一样,给用户推一些相关商品

组合优惠券:给购买过的用户发相关联商品的优惠券

捆绑销售:将相关联的商品组合起来销售

支持度(support): ,表示A和B同时出现的概率

置信度(confidence): ,表示A和B同时出现的概率占A出现概率的比值

提升度(Lift):提升度指当销售一个物品时,另一个物品销售率会增加多少,计算方式是:

Lift=1,表示X与Y相互独立

Lift>1,表示有效强关联规则

Lift<1,表示无效强关联规则

分析目标: 找到集合中的频繁元素,发现顾客购买的规律。如果从单个商品的出现频率分析到多个商品的出现频率,那么随着商品数目的增多,商品的组合数必定会飞速增长,运算量极大,因此需要一种能够快速剪枝的方法。

频繁模式的剪枝原理为:如果某一项集是频繁的,那么它的子集全都是频繁的;如果某一项集是不频繁的,那么它的超集都是不频繁的,即如果项集CDE是频繁的,那么它的子集C、D、E、CD、CE、DE都是频繁的,反之,如果项集AB不频繁,则它的超集ABC、ABD、ABE等也不频繁

由于每一个国家用户群体对于商品购买的偏好会有所偏差,此处使用数据集中的美国销售数据进行分析

检查数据缺失值、异常值、格式一致性,由于数据完整性较好,无需做数据清洗

关联分析

(1)提取国家为美国的数据

(2)提取所需关键字段

(3)商品列转行:通过groupby把商品变成二级索引,通过聚合购买数量,用unstack方法把二级转换成行,对于无数据(无购买记录)的地方用fillna(0)填充

(4)为了防止仅一次购买且同时购买多件商品被误判为高关联商品,此处设置min_value = 3/basket.shape[0],用于后续判断频繁项集最少出现3次

(5)对数据框中商品是否出现变换为0-1关系

(6)计算频繁项目集

(7)生成相应的支持度、置信度和提升度规则

变量说明 :

antecedent support:规则先导项支持度

consequent support:规则后继项支持度

support:规则支持度 (前项后项并集的支持度)

confidence:规则置信度 (规则置信度:规则支持度support / 规则先导项)

lift:规则提升度,表示含有先导项条件下同时含有后继项的概率,与后继项总体发生的概率之比。

结果分析:

实际上频繁项集中只有少数是有意义的,很多时候很多商品存在互补关系(比如乒乓球和球拍),即使不做购物篮分析,运营人员也知道可以进行捆绑销售,这是common sense,因此数据分析师需要有一双善于发现的眼睛,从沙子中挖掘金子。

本文中可以发现,在办公场景下,折叠椅、打印机、真空袋、信封、桌子与 订书钉 存在着一定的关联关系,可以理解为新办公室下相关办公用品的配置中订书钉是一个频繁出现的购置项目。

进一步,我们通过商品的销量发现,订书钉的需求强度较其他关联产品更高,可以尝试通过捆绑销售或赠送订书钉、购买订书钉赠送其他产品优惠券、个性化推荐等方法,提高销量。

以上是关于Apriori商品关联分析的主要内容,如果未能解决你的问题,请参考以下文章

Apriori 实现关联分析

商品零售购物篮分析

商品零售购物篮分析

商品零售购物篮分析

商品零售购物篮分析

商品零售购物篮分析