数据关联分析 association analysis (Aprior算法,python代码)

本文介绍了关联分析中的Apriori算法,用于从购物篮数据中找出频繁项集和规则。通过支持度和置信度衡量,算法遵循先验原理,通过迭代生成候选项集并计算支持度。Python代码展示了算法的实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1基本概念

购物篮事务(market basket transaction),如下表,表中每一行对应一个事务,包含唯一标识TID,和购买的商品集合。本文介绍一种成为关联分析(association analysis)的方法,这种方法,可以从下表可以提取出,{尿布}—>牛奶.

clip_image002

两个关键问题:1大型数据计算量很大。2发现的某种模式可能是虚假,偶然发生的。

2问题定义

把数据可以转换为如下表的二元表示,非二元不在本文讨论范围

clip_image004

项集

clip_image006

项集的支持度计数:

clip_image008

关联规则:

clip_image010

我们要发现,满足最小支持度与最小置信度的规则。

l 频繁项集(frequent itemset):发现满足最小支持度阈值的所有项集,这些项集成为频繁项集。

l 规则的产生:从上一步发现的频繁项集中提取所有高置信度的规则,这些规则成为强规则(strong rule)

频繁项集的产生
穷举法:

利用格结构(lattice structure)产生所有候选项集(candidate itemset).

clip_image012

利用穷举法,计算每个候选项集的支持度计数。但是该方法计算量太大。

clip_image014

先验(apriori)原理:

如果一个项集是频繁的,则的所有子集一定是频繁的。若某项集是非频繁的,则其所有的超级也一定是非频繁的。

如下图,若{c,d,e}是频繁项集,则它的子集一定是频繁项集。

clip_image016

项集{a,b}是非频繁的,则其所有的超级也一定是非频繁的,如下图。

clip_image018

Aprior算法的频繁项集产生

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值