运行结果(看着代码样例的数据集来放你的数据,然后直接运行即可):
代码附上,代码有注释哦!
# -*- coding: utf-8 -*- # @Time : 2021/4/7 22:09 # @Author : 海龟 # @Site : # @File : Aprior.py # @Software: PyCharm # 最小支持度 min_sup = 3 # 最小置信度 min_conf = 0.8 def apriori(): # 1.读入数据 data_set = load_data() # 2.把单独数据拿出来存到集合里面,构建1阶频繁项集 C1 = create_C1(data_set) # 3.计算每项的支持度和去掉支持数小于最小支持度数的集合 L1 = count_support(C1, data_set) L1_copy = L1.copy() # 4.连接 # 5.扫描前一个项集,排列组合 # 6.计数,剪枝 # 7.重复4-6,直到得到最终的 K 项频繁项集,因为是求2阶就可以,所以只再算一次 L = [] # 第一项的先加进去 L.append(L1_copy) k = 2 # k=2开始,由频繁1项集生成频繁2项集,直到下一个打的项集为空 while (len(L[k-2])>0): # 当L