没有支持度、置信度、提升度;只有关联商品的明细统计!
关联规则是反映一个事物与其他事物之间的相互依存性和关联性,常用于实体商店或在线电商的推荐系统:通过对顾客的购买记录数据库进行关联规则挖掘,最终目的是发现顾客群体的购买习惯的内在共性,例如购买产品A的同时也连带购买产品B的概率,根据挖掘结果,调整货架的布局陈列、设计促销组合方案,实现销量的提升,最经典的应用案例莫过于。
关联规则分析中的关键概念包括:支持度(Support)、置信度(Confidence)与提升度(Lift) 。
支持度 (Support): 支持度是两件商品(A∩B)在总销售笔数(N)中出现的概率,即A与B同时被购买的概率。
置信度 (Confidence): 置信度是购买A后再购买B的条件概率。简单来说就是交集部分C在A中比例,如果比例大说明购买A的客户很大期望会购买B商品。
提升度 (Lift): 提升度表示先购买A对购买B的概率的提升作用,用来判断规则是否有实际价值,即使用规则后商品在购物车中出现的次数是否高于商品单独出现在购物车中的频率。如果 大于1说明规则有效,小于1则无效。
以上关联分析的理论介绍完毕。
零售行业中,POS统计的销售明细表,一般包括:日期、单号、店铺、产品代码、数量、金额等。如下图:
POS销售事实表中简单列举了常用的字段,通过POS销售事实表,容易计算出哪些产品比较畅销,假设本例中产品代码:MaterialID ='X41100' 为TOP1,现在想知道哪些产品和TOP1关联销售的次数最多,即:2个或者多个产品多次同时出现共同的单号中。因POS销售事实表一般较大,从数据库中查询关联产品明细思路如下:
第一步 :取数5.1-5.5时间(做时间单位)内,销售明细中包含 MaterialID ='X41100' 单号明细,代码如下:
SELECT BillNo,MaterialID,Qty from tablename1
WHERE BillDate BETWEEN '2017-05-01' and '2017-05-05' and MaterialID ='X41100'(根据具体数据明细类型参考是否加 DISTINCT函数)。
此临时表中单号仅包含 MaterialID ='X41100' 的产品明细。
第二步:通过第一步查询后的临时表作为主表,通过单号为关键字段,做左连接,查询POS销售事实表中单号只包含第一步中临时表的单号,但产品明细为全部。代码如下:
SELECT aa.MaterialID as TOP-MaterialID ,bb.MaterialID as 关联-MaterialID ,COUNT(*) as 关联次数FROM
(SELECT BillNo,MaterialID,Qty from tablename1 WHERE BillDate BETWEEN '2017-05-01' and '2017-05-05' and MaterialID ='X41100') as aa LEFT JOIN
(SELECT BillNo,MaterialID,Qty from tablename1 WHERE BillDate BETWEEN '2017-05-01' and '2017-05-05' ) as bb
ON aa.BillNo = bb.BillNo
GROUP BY aa.MaterialID,bb.MaterialID
ORDER BY 关联次数 desc
查询后数据明细如下:
备注,查询第一条记录,为自身关联,忽略。 MaterialID:X4100 和 X41120 关联次数为15,即二者在查询实际段内,有15个相同单号。
在查询集体明细后,根据实际结合实际产品明细的业务组合逻辑进行分析应用,此文略!
End.
作者:Meteor(中国统计网特邀认证作者)
相关文章推荐
鞋服行业‘缺货率’指标定义和应用
零售数据分析 | 用股票K线图模拟展现各项指标