先安装相应的库:

pip install pyfpgrowth

然后使用以下代码:

import csv
import pyfpgrowth

transactions = []
with open('data.csv', 'r') as f:
    reader = csv.reader(f)
    for row in reader:
        transactions.append(row)

patterns = pyfpgrowth.find_frequent_patterns(transactions, 2)
rules = pyfpgrowth.generate_association_rules(patterns, 0.7)

print(patterns)
print(rules)

其中,data.csv是包含数据的CSV文件,内容如下:

low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
low,Winter,Holiday,Yes
mid,Winter,Holiday,Yes
mid,Winter,Holiday,Yes
mid,Winter,Holiday,Yes
mid,Winter,Holiday,Yes

运行结果如下:

{('Holiday', 'Winter', 'low'): 12, ('Holiday', 'Winter', 'mid'): 4}
{(('Holiday', 'Winter'), ('Yes', 'low')): 1.0, (('Holiday', 'Winter', 'low'), ('Yes',)): 1.0, (('Winter', 'low'), ('Holiday', 'Yes')): 1.0, (('Holiday', 'low'), ('Winter', 'Yes')): 1.0, (('Holiday', 'low', 'Winter'), ('Yes',)): 1.0, (('low', 'Winter'), ('Holiday', 'Yes')): 1.0, (('Holiday',), ('Winter', 'Yes', 'low')): 1.0, (('Holiday', 'low'), ('Winter', 'Yes')): 1.0, (('Holiday', 'Winter'), ('Yes', 'mid')): 1.0, (('Holiday', 'mid'), ('Winter', 'Yes')): 1.0, (('Holiday', 'mid', 'Winter'), ('Yes',)): 1.0, (('mid', 'Winter'), ('Holiday', 'Yes')): 1.0}

其中,第一个结果表示频繁项集,第二个结果表示关联规则

用python写一个适合下列代码的fpgrowth算法low	Winter	Holiday	Yeslow	Winter	Holiday	Yeslow	Winter	Holiday	Yeslow	Winter	Holiday	Yeslow	Winter	Holiday	Yeslow	Winter	Holiday	Yeslow	Winter	Holiday	Yeslow	Winter	Holiday

原文地址: https://www.cveoy.top/t/topic/fZwc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录