使用Apriori进行关联分析

[完]机器学习实战 第十一章 使用Apriori算法进行关联分析 本章内容: Apriori算法 频繁项集生成 关联规则生成 投票中的关联规则发现 从大规模数据集中寻找物品间的隐含关系被称作关联分析(association analysis)或者关联规则学习(association rule learning)。寻找物品的不同组合十分耗时,计算代价高,蛮力搜索方法不能解决这个问题。使用Apriori算法可解决这个问题。一、关联分析关联分析是一种在大规模数据集中寻找 阅读详情
源码有问题,贴出修改后可运行代码:
def loadDataSet():
    return [[1, 3, 4], [2, 3, 5], [1, 2, 3, 5], [2, 5]]


def createC1(dataSet):
    C1 = []
    for transaction in dataSet:
        for item in transaction:
            if not [item] in C1:
                C1.append([item])
    C1.sort()
    # map(frozenset, C1]用[frozenset(fset) for fset in C1]代替
代替原来的 if not ssCnt.has_key(can):
return [frozenset(fset) for fset in C1]# D = [set(fset) for fset in dataSet]def scanD(D, Ck, minSupport): ssCnt = {} for tid in D: for can in Ck: if can.issubset(tid): if not can in ssCnt: #修改,代替原来的 if not ssCnt.has_key(can): ssCnt[can] = 1 else: ssCnt[can] += 1 numItems = float(len(D)) retList = [] supportData = {} for key in ssCnt: support = ssCnt[key] / numItems if support >= minSupport: retList.insert(0, key) supportData[key] = support return retList, supportDatadef aprioriGen(Lk, k): retList = [] lenLk = len(Lk) for i in range(lenLk): # 前k-2项相同时, 将两个集合合并 for j in range(i + 1, lenLk): L1 = list(Lk[i])[:k - 2] # k-2减少重复操作 L2 = list(Lk[j])[:k - 2] L1.sort() L2.sort() if L1 == L2: retList.append(Lk[i] | Lk[j]) return retListdef apriori(dataSet, minSupport=0.5): C1 = createC1(dataSet) D = [s for s in dataSet] #修改处,原来是map(set,dataSet),估计是作者重写的函数 L1, supportData = scanD(D, C1, minSupport) L = [L1] k = 2 while (len(L[k - 2])) > 0: Ck = aprioriGen(L[k - 2], k) Lk, supK = scanD(D, Ck, minSupport) supportData.update(supK) L.append(Lk) k += 1 return L, supportData

问题1:

TypeError: object of type 'map' has no len()

原因:

map(set,dataSet),估计是作者重写的函数 
问题2:

AttributeError: 'dict' object has no attribute 'has_key'

原因:

python3

dict没有hash\_key()方法,用

if not can in ssCnt:代替原来的 if not ssCnt.has_key

 

机器学习实战 遇到的bug 第十一章 使用Apriori算法进行关联 1、No moudule named votesmart 这是因为没有导入votesmart库造成的,可以点击右侧链接下载:链接: https://pan.baidu.com/s/1D-twW285i4IoUOEqcbMX2w 密码: me4m 2、无效声明 将如下代码 except urllib2.HTTPError, e: raise VotesmartApi... 阅读详情

相关推荐

数据分析五、Apriori 算法之关联分析

agg方法与Apriori 算法一、agg()方法二级目录三级目录二、Apriori 算法 一、agg()方法 二级目录 三级目录 二、Apriori 算法

随风的博客 9312

【机器学习】第4部分 关联分析

1、关联分析的基本概念关联分析(association analysis):从大规模数据集中寻找物品间的隐含关系。项集(itemset):包含0个或者多个项的集合称为项集。频繁项集:那些经常一起出现的物品集合支持度计数(support count):一个项集出现的次数也就是整个交易数据集中包含该项集的事物数关联规则是形如A->B的表达式,规则A->B的度量包括支持度和置信度项集支持度:一个项集出现

墨竹 1万+

【机器学习实战-python3】使用Apriori算法进行关联 分析

本篇的数据和代码参见:https://github.com/stonycat/ML-in-Action一、背景 从大规模数据集中寻找物品间的隐含关系被称作关联分析(association analysis)或者关联规则学习(association rule learning)。 关联分析是一种在大规模数据集中寻找有趣关系的任务。这些关系可以有两种形式:频繁项 集或者关联规则。频繁项集(freq

修行的猫ZQ 3万+

机器学习理论与实战(十一)关联规则分析Apriori

《机器学习实战》的最后的两个算法对我来说有点陌生,但学过后感觉蛮好玩,了解了一般的商品数据关联分析和搜索引擎智能提示的工作原理。先来看看关联分析(association analysis)吧,它又称关联规则学习(association rule learning),它的主要工作就是快速找到经常在一起的频繁项,比如著名的“啤酒”和“尿布”。试想一下,给我们一堆交易数据,每次的交易数据中有不同的商品,

计算机视觉、机器学习朝拜者 9725

Apriori算法进行数据关联分析

从大规模数据集中寻找物品间的隐含关系被称作关联分析(association analysis)或者关联规则学习(association rule learning)。这里的主要问题在于,寻找物品的不同组合是一项十分耗时的任务,所需的计算代价很高,蛮力搜索方法并不能解决这个问题,所以需要用更智能的方法在合理的时间范围内找到频繁项集。       为了快速明确概念,从例子出发,现在面对一沓超市购

lzhalan2016的博客 6088

关联分析之Apriori学习笔记

关联分析(Association analysis)简介大量数据中隐藏的关系可以以‘关联规则’和‘频繁项集’的形式表示。rules:{Diapers}–>{Beer}说明两者之间有很强的关系,购买Diapers的消费者通常会购买Beer。 除了应用在市场篮子数据(market basket data)中,关联分析(association analysis)也可以应用在其他领域像bioinfomat

小小鸟 6461

apriori和关联规则算法

问题的背景:     超市的会员卡记录了大量的用户购买数据,通过分析这些数据可以帮助商店分析用户的购买行为。从大规模数据集中寻找物品间的隐含关系被称为关联规则分析(association analysis)或关联规则学习(association rule learning)。举个例子说就是发现用户购买了一件商品(如帽子)后,会购买另一件商品(如围巾)的概率。关联规则分析需要从大规模的商品数据中,

guoguo_dreamfly的专栏 5836

使用Apriori关联规则算法实现购物篮分析

Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集,而且算法已经被广泛的应用到商业,网络安全等各个领域。 ...

weixin_69959830的博客 5805

Apriori关联分析案例——购物车的关联分析

1.Apriori关联分析的介绍 这一部分可以看我的上一篇博文,里面主要介绍了关联分析的原理。 链接: python机器学习之关联分析(Apriori). 2.案例背景与分析过程 现代商品种类繁多,顾客往往会纠结选择买啥,尤其对于选择困难症的顾客来说,选择商品更是难上加难。繁杂的选购往往会给顾客带来疲惫的购物体验。对于部分商品,比如面包和牛奶,薯片和可乐等,是顾客经常同时购买的东西,当这些东西距离十分遥远时,就会减小顾客的购买欲望。因此,为了获取最大销售利润,我们需要了解销售什么样的商品、采用什么样的促销手

柳小葱的博客 1万+

Apriori关联性分析python实现(含数据集)

Apriori关联性分析python实现(含数据集),结构清晰易懂

STM32MP157+AD7606BSTZ四通道IEPE传感器采集方案实战(附完整电路图)

本文详细介绍了基于STM32MP157和AD7606BSTZ的四通道IEPE传感器采集方案,涵盖硬件电路设计、软件驱动开发及系统性能优化。通过精确的恒流源设计和同步采样技术,实现高精度振动信号采集,适用于工业振动监测等应用场景。

weixin_42713608的博客 700

使用Apriori算法进行关联分析

现在商家通过查看哪些商品经常在一起购买,来了解用户的购买行为。这种从数据海洋中抽取的知识可以用于商品的定价、市场促销、存货管理等环节。从规模数据集中寻找物品间的隐含关系被称作关联分析或者关联规则学习。下面首先详细讨论关联分析,然后讨论Apriori原理,Apriori算法正式基于该原理得到的。接下来创建函数频繁项集高效发现的函数,然后从频繁项集中抽取出关联规则。 1.1 关联分析 关联分

tonight1103的博客 2505

PackML工业标准解析:统一机器状态管理与数据交换的实践指南

在工业自动化与智能制造领域,实现设备间的互联互通与高效协同是核心挑战。这背后依赖于一套标准化的机器行为与数据交换规范,其原理在于通过定义统一的状态模型与接口协议,消除不同厂商设备间的“语言”隔阂。这项技术的核心价值在于大幅降低系统集成复杂度、提升运维效率与生产透明度,是构建数字化工厂的基石。其典型应用场景包括包装机械、离散制造产线等需要多设备协同的领域。本文聚焦的PackML(包装机械语言)标准,正是这一理念的杰出实践,它通过一套严谨的**状态机模型**和**数据标签(PackTags)** 体系,为机器提

weixin_30070339的博客 400

Apriori(关联分析算法)

关联分析又称关联挖掘,就是在交易数据、关系数据或其他信息载体中,查找存在于项目集合或对象集合之间的频繁模式、关联、相关性或因果结构。

weixin_44757834的博客 2万+

相机基础知识讲解:CMOS和CCD

相机基础知识讲解:CMOS和CCD

Coppa的博客 5万+

关于kafka面试问题整理

1.kafuka介绍 kafka是一个分布式流媒体平台,类似于消息队列和企业消息传递系统,Kafka对于zookeeper是强依赖,保存kafka相关的节点数据,所以安装Kafka之前必须先安装zookeeper 2.kafuka的使用流程 producer:发布消息的对象称之为生产者(producer) broker:一个独立的Kafka服务器,被称之为broker,多个broker可以组成kafka集群 topic:Kafka将消息保存到主题(topic)中,可以简单理解为Topic为文件

qq_42190033的博客 437

Apriori算法——关联分析

查看原文:http://www.wyblog.cn/2017/01/05/apriori%e7%ae%97%e6%b3%95%e5%85%b3%e8%81%94%e5%88%86%e6%9e%90/概念 Apriori算法是数据挖掘算法中的重要一员,它是通过对数据集进行关联分析,从而分析出数据集里项与项之间的关联关系。算法最简单直接的应用,当属对超市里被购买的物品的关联分析,从而挖掘出顾客购买产

wy的点滴 901

《玩儿起来吧》MATLAB 实时图像处理系列(一二三四)

大家学了图像处理之后,是不是就想学以致用。而要用于生活中,最好的方式就是和摄像头搭配,实现实时图像处理。今天就给大家分享MATLAB实时图像处理的基础方法,希望能帮你快速入门。

HPC_ZY 1万+

Apriori算法进行关联分析

最后附上代码:#加载数据集 def loadDataSet(): return [[1, 3, 4], [2, 3, 5], [1, 2, 3, 5], [2, 5]] #构建候选集C1 def createC1(dataSet): C1 = [] for transaction in dataSet: for item in transaction: ...

一路向北 3024

1.2 固态变压器:传统工频变压器的局限与SST的技术起源

本小节明确传统工频变压器在电力系统中的基础定位与核心工作特性,系统分析其在新型电力系统场景下的固有技术瓶颈,梳理固态变压器(Solid State Transformer, SST,又称电力电子变压器Power Electronic Transformer, PET)从概念提出到工程化成熟的完整演进路径,为后续SST技术优势、设计需求与规范符合性要求的讲解建立底层逻辑,同时对应GB/T 40429-2021《电力电子变压器通用技术要求》的需求制定背景。

技术工作者 657

水与光的奇妙“切割之舞”:水导激光切割技术探秘

水导激光切割技术的诞生,是材料加工领域不断追求高精度、高质量加工的成果。传统激光切割技术在加工过程中,材料会因瞬间高温而产生热变形、热影响区大以及切割面粗糙等问题,这些弊端在对一些高精度、热敏性材料的加工中尤为突出 ,迫切需要一种新的技术来克服这些难题。水导激光切割技术的起源可以追溯到 20 世纪 80 年代。1986 年,德国公司 Aesculap-Werke AG 首次提出了将水流引入激光切割过程的创新想法,并制造出首代水导激光设备。不过,当时的技术尚处于雏形阶段,仅仅是在光纤出口添加了一小柱水流,激光

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 1673

python apriori算法 sklearn_使用Apriori算法进行关联分析

目录1.名词概念2.频繁项集发现3.Apriori算法关联分析4.代码实现5.参考文章通过组合交叉变量制定风控策略时有两种方法:一是通过决策树分箱进行变量交叉,可以见文章假设一个简单的交易清单如下,分别代表5笔交易情况。下面是关联分析中用到的一些名词概念。1.项与项集项,指我们分析数据中的一个对象,如豆奶;项集,就是若干项的项构成的集合,如集合{豆奶,莴苣}是一个2项集。2.支持度某项集在数据集中...

weixin_39967670的博客 3382

详解FreeRTOS:FreeRTOSConfig.h系统配置文件(拓展篇—1)

FreeRTOS的系统配置文件为FreeRTOSConfig.h,在配置文件中可以完成FreeRTOS的裁剪和配置,这是非常重要的一个文件,本篇博文就来讲解这个文件。

不脱发的程序猿 1546

机器学习实战—使用Apriori算法进行关联分析

从大规模数据集中寻找物品间的隐含关系被称作关联分析或者关联规则学习。 一、关联分析 频繁项集:经常出现在一块的集合。 关联规则:按时两种物品之间可能存在很强的关系。 支持度:一个项集的支持度被定义为数据集中包含该项集的记录所占的比例。 可信度或置信度:是针对诸如{尿布}—>{葡萄酒}的关联规则来定义的,这条规则的可信度被定义为:支持度({尿布,葡萄酒})/支持度({尿布}) 支持...

zoinsung_lee的博客 8362

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

11使用Apriori算法进行关联分析

第11章 使用Apriori算法进行关联分析 一、背景 在超市中,实际上包含了许多机器学习的应用,包括超市物品的展示方式、摆放位置、购物之后优惠券的提供以及用户的忠诚度计划等。他们都离不开数据的分析。 本文介绍关联分析,即从大规模数据集中寻找物品间的隐含关系。 最著名的一个例子:啤酒与尿布的例子 关联分析中最有名的例子是“尿布与啤酒”。据报道,美国中西部的一家连锁店发现,男人们会在周四购买尿布和...

yiluohan0307的专栏 5575

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

上一篇: 心路历程
下一篇: Tensorflow CIFAR-10训练例子报错解决
Edwards_June
博客等级 码龄12年 12粉丝 182原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值