我试图使用Apriori主体高效地生成频繁项集。我目前的尝试是使用迭代工具中的组合,但是它产生了不必要数量的项目集。在生成它们时,我需要遵循Apriori主体,即
如果一个项目集不频繁,那么它的所有超集也必须是不频繁的。
我目前的尝试效率很低。
import itertools as it
def generateItemsets(Lk,k):
    comb = sum(Lk.keys(), tuple())
    Ck = set(it.combinations(comb, k))
    return Ck发布于 2021-03-16 04:48:23
您可能会考虑FPgrowth / FPMax,用户指南可能会对您有所帮助。金融时报:http://rasbt.github.io/mlxtend/user_guide/frequent_patterns/fpmax/
此外,可能有成吨的一行物品,例如:便利店,你只需购买可乐或咖啡。您可能会考虑添加行总数和使用行总数> 1之类的内容,这将筛选出大量不重要的数据。
https://stackoverflow.com/questions/66373828
复制相似问题