python实现fp_growth调包_FP_Growth算法python实现

FP_Growth算法是关联分析中比较优秀的一种方法,它通过构造FP_Tree,将整个事务数据库映射到树结构上,从而大大减少了频繁扫描数据库的时间。

FP_Growth算法主要分成两个步骤,第一步是构造FP-Tree,第二步是从FP-Tree中提取频繁项集。

更多关联分析和FP_Growth的介绍以及伪代码请见:什么是关联分析、FP-Growth算法的介绍。

本文主要目的是介绍python实现FP_Growth算法的代码。

FP_Growth项目目录有四个文件:

>FP_Growth

? __init__.py

? tree_builder.py

? tree_building.py

? tree_miner.py

其中,tree_builder.py和tree_building.py文件主要负责FP-tree的构造,而tree_miner.py则是用来从构造好的FP-tree上提取频繁项集。

主程序所在的文件“\__init__.py”代码如下:

#coding=utf-8

import tree_builder

import tree_miner

routines = [

[‘Cola‘,‘Egg‘,‘Ham‘],

[‘Cola‘,‘Diaper‘,‘Beer‘],

[‘Cola‘,‘Beer‘,‘Diaper‘,‘Ham‘],

[‘Diaper‘,‘Beer‘]

] #事务数据集

min_sup = 2 #最小支持度计数

headerTable = {} #头结点表,用来存放各个项的索引

treeBuilder = tree_builder.Tree_builder(routines=routines, min_sup=min_sup, headerTable=headerTable) #建造FP_Tree

tree_miner.Tree_miner(Tree=treeBuilder.tree, min_sup=min_sup, headerTable=headerTable) #对FP_Tree进行频繁项集的挖掘

它主要实现三个动作:

输入事务数据集routines;

调用tree_builder,构造FP-tree;

调用tree_miner,从FP-tree提取频繁项集;

代码地址:FP-Growth算法python实现(完整代码)。

备注:该代码是在 Python2.7+eclipse 环境下编写的。可在eclipse中导入项目,也可在命令行窗口用python命令执行“__init__.py”文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值