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

首先导入包含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的资料请关注聚米学院其它相关文章!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值