python 实现关联规则算法Apriori的示例


Posted in Python onSeptember 30, 2020

首先导入包含apriori算法的mlxtend库,

pip install mlxtend

调用apriori进行关联规则分析,具体代码如下,其中数据集选取本博客 “机器学习算法——关联规则” 中的例子,可进行参考,设置最小支持度(min_support)为0.4,最小置信度(min_threshold)为0.1,

最小提升度(lift)为1.0,对数据集进行关联规则分析,

from mlxtend.preprocessing import TransactionEncoder
from mlxtend.frequent_patterns import apriori
from mlxtend.frequent_patterns import association_rules
import pandas as pd

df_arr = [['苹果','香蕉','鸭梨'],
    ['橘子','葡萄','苹果','哈密瓜','火龙果'],
    ['香蕉','哈密瓜','火龙果','葡萄'],
    ['橘子','橡胶'],
    ['哈密瓜','鸭梨','葡萄']
    ]

#转换为算法可接受模型(布尔值)
te = TransactionEncoder()
df_tf = te.fit_transform(df_arr)
df = pd.DataFrame(df_tf,columns=te.columns_)

#设置支持度求频繁项集
frequent_itemsets = apriori(df,min_support=0.4,use_colnames= True)
#求关联规则,设置最小置信度为0.15
rules = association_rules(frequent_itemsets,metric = 'confidence',min_threshold = 0.15)
#设置最小提升度
rules = rules.drop(rules[rules.lift <1.0].index)
#设置标题索引并打印结果
rules.rename(columns = {'antecedents':'from','consequents':'to','support':'sup','confidence':'conf'},inplace = True)
rules = rules[['from','to','sup','conf','lift']]
print(rules)
#rules为Dataframe格式,可根据自身需求存入文件

输出结果如下:

from     to sup   conf   lift
0    (哈密瓜)    (火龙果) 0.4 0.666667 1.666667
1    (火龙果)    (哈密瓜) 0.4 1.000000 1.666667
2    (哈密瓜)    (葡萄) 0.6 1.000000 1.666667
3     (葡萄)    (哈密瓜) 0.6 1.000000 1.666667
4     (葡萄)    (火龙果) 0.4 0.666667 1.666667
5    (火龙果)    (葡萄) 0.4 1.000000 1.666667
6  (哈密瓜, 葡萄)    (火龙果) 0.4 0.666667 1.666667
7  (哈密瓜, 火龙果)    (葡萄) 0.4 1.000000 1.666667
8  (葡萄, 火龙果)    (哈密瓜) 0.4 1.000000 1.666667
9    (哈密瓜)  (葡萄, 火龙果) 0.4 0.666667 1.666667
10    (葡萄) (哈密瓜, 火龙果) 0.4 0.666667 1.666667
11    (火龙果)  (哈密瓜, 葡萄) 0.4 1.000000 1.666667

Process finished with exit code 0

以上就是python 实现关联规则算法Apriori的示例的详细内容,更多关于python 实现关联规则算法Apriori的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python 基础学习第二弹 类属性和实例属性
Aug 27 Python
Python实现包含min函数的栈
Apr 29 Python
python万年历实现代码 含运行结果
May 20 Python
Python常见异常分类与处理方法
Jun 04 Python
python进阶_浅谈面向对象进阶
Aug 17 Python
python编写Logistic逻辑回归
Dec 30 Python
在python中用url_for构造URL的方法
Jul 25 Python
Flask框架学习笔记之路由和反向路由详解【图文与实例】
Aug 12 Python
Django 自定义权限管理系统详解(通过中间件认证)
Mar 11 Python
pycharm配置python 设置pip安装源为豆瓣源
Feb 05 Python
基于Python 函数和方法的区别说明
Mar 24 Python
Python图片处理之图片裁剪教程
May 27 Python
Python之字典添加元素的几种方法
Sep 30 #Python
Python之字典对象的几种创建方法
Sep 30 #Python
python 实现朴素贝叶斯算法的示例
Sep 30 #Python
Python字典取键、值对的方法步骤
Sep 30 #Python
Python根据字典的值查询出对应的键的方法
Sep 30 #Python
python字典通过值反查键的实现(简洁写法)
Sep 30 #Python
python中字典增加和删除使用方法
Sep 30 #Python
You might like
php模拟js函数unescape的函数代码
2012/10/20 PHP
基于jQuery的js分页代码
2010/06/10 Javascript
JS控件的生命周期介绍
2012/10/22 Javascript
jquery表格内容筛选实现思路及代码
2013/04/16 Javascript
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
javascript实现的图片切割多块效果实例
2015/05/07 Javascript
jQuery EasyUI 布局之动态添加tabs标签页
2015/11/18 Javascript
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
2017/01/04 Javascript
利用jQuery实现一个简单的表格上下翻页效果
2017/03/14 Javascript
react router 4.0以上的路由应用详解
2017/09/21 Javascript
基于Vue开发数字输入框组件
2017/12/19 Javascript
js设计模式之单例模式原理与用法详解
2019/08/15 Javascript
vue中实现点击变成全屏的多种方法
2020/09/27 Javascript
JavaScript实现缓动动画
2020/11/25 Javascript
[50:58]2018DOTA2亚洲邀请赛3月29日 小组赛A组OpTic VS Newbee
2018/03/30 DOTA
Python生成密码库功能示例
2017/05/23 Python
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
Python Pexpect库的简单使用方法
2019/01/29 Python
用vue.js组件模拟v-model指令实例方法
2019/07/05 Python
python代码实现逻辑回归logistic原理
2019/08/07 Python
Django 查询数据库并返回页面的例子
2019/08/12 Python
python中struct模块之字节型数据的处理方法
2019/08/27 Python
Eclipse配置python默认头过程图解
2020/04/26 Python
Uber Eats台湾:寻找附近提供送餐服务的餐厅
2018/05/07 全球购物
Marlies Dekkers内衣法国官方网上商店:国际知名的荷兰内衣品牌
2019/03/18 全球购物
英国网上超市:Ocado
2020/03/05 全球购物
中国梦我的梦演讲稿
2014/04/23 职场文书
诚信贷款承诺书
2014/05/30 职场文书
节约用电标语
2014/06/17 职场文书
党支部反对四风思想汇报
2014/10/10 职场文书
小学教师个人总结
2015/02/05 职场文书
对外汉语教师推荐信
2015/03/27 职场文书
2015年世界无烟日活动方案
2015/05/04 职场文书
新闻通讯稿范文
2015/07/22 职场文书
《孙子兵法》:欲成大事者,需读懂这些致胜策略
2019/08/23 职场文书
动作冒险《Hell Is Us》将采用虚幻5 消灭怪物探索王国
2022/04/13 其他游戏