开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第16天,点击查看活动详情
购物篮分析(Market Basket Analysis)
购物篮分析(Market Basket Analysis)是数据挖掘十大经典算法之一关联规则挖掘的应用场景,目的在于,通过对用户消费记录数据的挖掘和分析,找出用户购买习惯的一些潜在规律,从而可以为用户提供他们想要的搭配或套餐。 套餐销量的提升一般会带来客单价的提升,从而提高公司收益。
购物篮分析的关键衡量指标有三个: 1.支持度
支持度是指A和B两个商品同时被购买的概率,代表了这个组合的可靠程度
2.置信度
置信度是指先购买A之后又购买了B的条件概率,是买了A和B的订单占所有买了A的订单里的占比。
代表买了A的用户有多大概率会再买B,也就是买A产品对B产品产生了多大的影响
3.提升度
A对B提升度=A对B的置信度/P(B)
提升度是一个比较难理解的指标。它的计算方法是 A对B的置信度/P(B)。提升度和置信度一样,也是一个条件概率。
A对B的置信度指的是在购买A商品的情况下,有多大概率再买B商品。
实战
当我们算出所有搭配的这三个指标后,我们可以设定合理的阈值来衡量每个搭配的优劣,最终就可以根据这些指标来确定合适的组合搭配了。
下面我们使用arules包以及groceries数据集进行演示:
由于这个数据没有办法直接在r中展示出来,我们需要使用inspect()函数查看数据集的内容,展现出来的效果是类似于商品小票一样的数据
使用arules包中的apriori()函数进行分析建模,这个函数就相当于线性回归分析中的lm()或者是aov()函数,是关联规则挖掘算法
Support=0.01表示最小支持度是0.01,confidence=0.5代表最小置信度是50%
fit <-apriori(Groceries,parameter=list(support=0.01,confidence=0.5))
通过summary()函数来查看统计信息,用inspect()函数查看给出的规则:
结果表明,在酸奶出现的地方,购物小票中就一定会出现纯牛奶,支持度达到了0.01,说明两者的关联很强。