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

原文连接:http://tecdat.cn/?p=7939

数据科学Apriori算法是一种数据挖掘技术,用于挖掘频繁项集和相关的关联规则。本模块重点介绍什么是关联规则挖掘和Apriori算法,以及Apriori算法的用法。此外,在小型企业场景中,咱们将借助Python编程语言构建一个Apriori模型。

  

什么是关联规则挖掘?

如前所述,Apriori算法用于关联规则挖掘。如今,什么是关联规则挖掘?关联规则挖掘是一种用于识别一组项目之间的频繁模式和关联的技术。算法

例如,了解客户的购买习惯。经过查找顾客放置在其“购物篮”中的不一样商品之间的关联和关联,能够得出重复的模式. 编程

识别产品/商品之间的关联的过程称为关联规则挖掘。为了实现关联规则挖掘,已经开发了许多算法。Apriori算法是其中最受欢迎的算法,并且能够说是最有效的算法。让咱们讨论什么是Apriori算法。编程语言

什么是先验算法?spa

Apriori算法假定频繁项集的任何子集都必须是频繁的。3d

 

假设包含{葡萄酒,薯条,面包}的交易也包含{葡萄酒,面包}。所以,根据Apriori原理,若是{酒,薯条,面包}很频繁,那么{酒,面包}也必须很频繁。blog

Apriori算法如何工做?

Apriori算法中的关键概念是,它假定一个频繁项集的全部子集都是频繁的。一样,对于任何不频繁的项目集,其全部超集也必须不频繁。事务

让咱们在一个很是著名的业务场景市场篮分析的帮助下,尝试并理解Apriori算法的工做原理。开发

这是一个小时内包含六个事务的数据集。每一个事务都是0和1的组合,其中0表示不存在某项,而1表示其存在。rem

交易编号get

葡萄酒

薯片

面包

牛奶

1

1个

1个

1个

1个

2

1个

0

1个

1个

3

0

0

1个

1个

4

0

1个

0

0

5

1个

1个

1个

1个

6

1个

1个

0

1个

咱们能够从这种状况下找到多个规则。例如,在葡萄酒,薯条和面包的交易中,若是购买了葡萄酒和薯条,那么客户也会购买面包。

{葡萄酒,薯条} => {面包}

如今咱们知道了找出有趣规则的方法,让咱们回到示例中。在开始以前,让咱们将支持阈值固定为50%。

步骤1:建立全部交易中出现的全部项目的频率表

项目

频率

葡萄酒

4

薯片

4

面包

4

牛奶

5

步骤2根据支持阈值查找重要项目

支持阈值= 3

项目

频率

葡萄酒

4

薯片

4

面包

4

牛奶

5

步骤3从重要的项目开始,使成对的商品与订单无关

项目

频率

葡萄酒,薯条

3

葡萄酒,面包

3

葡萄酒,牛奶

4

薯条,面包

2

薯片,牛奶

3

面包,牛奶

4

步骤4根据支持阈值找到重要项目

项目

频率

葡萄酒,牛奶

4

面包,牛奶

4

第5步:根据第4步中的重要商品,三件一块儿购买的商品

项目

频率

葡萄酒,面包,牛奶

3

{酒,面包,牛奶}是从给定数据中得到的惟一重要项目集。可是在实际场景中,咱们将有数十个项目可用来构建规则。而后,咱们可能必须制做四对/五对项集。

 

Python中的Apriori算法-市场篮子分析

问题陈述

一家零售商店的经理正在尝试找出六个商品之间的关联规则,以找出哪些商品更常常一块儿购买,以便他能够将这些商品放在一块儿以增长销量。

 

数据集

如下是第一天的交易数据。此数据集包含6个项目和22个交易记录。

 

 

使用Python进行市场购物篮分析

咱们将实现Apriori算法,以帮助经理进行市场分析。

 

步骤1:导入库 

 

步骤2:载入资料集

 

 

步骤3:浏览记录 

 

步骤4:查看 

步骤5: 将Pandas DataFrame转换为列表列表

 

步骤6:创建Apriori模型

 

步骤7:打印出规则数量 

步骤8:浏览规则

 

 

 

 

第一条规则的支持值为0.5。该数字是经过将包含“牛奶”,“面包”和“黄油”的交易数量除以交易总数而得出的。

该规则的置信度为0.846,这代表在同时包含“牛奶”和“面包”的全部交易中,也有84.6%的交易包含“黄油”。

提高1.241告诉咱们,同时购买“牛奶”和“黄油”的顾客购买“黄油”的可能性是“黄油”的默承认能性的1.241倍。

相关文章
相关标签/搜索