Python 3.x 如何解释Mlxtend关联规则的结果

Python 3.x 如何解释Mlxtend关联规则的结果,python-3.x,mlxtend,fpgrowth,Python 3.x,Mlxtend,Fpgrowth,我正在使用mlxtend查找关联规则: 代码如下: df = apriori(dum_data, min_support=0.4, use_colnames=True) rules = association_rules(df, metric="lift", min_threshold=1) rules2=rules[ (rules['lift'] >= 1) & (rules['confidence'] >= 0.7) ] 输出: antecedents

我正在使用mlxtend查找关联规则:

代码如下:

df = apriori(dum_data, min_support=0.4, use_colnames=True)
rules = association_rules(df, metric="lift", min_threshold=1)
rules2=rules[ (rules['lift'] >= 1) & (rules['confidence'] >= 0.7) ]
输出:

antecedents             consequents    antecedentsupport    consequentsupport   support confidence  lift      leverage  conviction
frozenset({'C'})        frozenset({'B'})        0.63        0.705                   0.45    0.726   1.030       0.013   1.077
frozenset({'A'})        frozenset({'B'})        0.98        0.705                   0.69    0.70    1.003       0.0007  1.00081
frozenset({'A', 'C'})   frozenset({'B'})        0.63        0.705                   0.45    0.72    1.030       0.013   1.0776
我给出了最小支持度=0.4。前因支持、后因支持和后因支持之间的区别是什么

提升和杠杆是什么意思?如何判断它是好是坏


我能理解的是,对于输出中的第一条规则,C和B同时出现了多少次?这是否正确?让我们以第三条规则{A,C}=>{B}为例:

support=对{A,B,C}的支持|支持意味着您计算包含所有{A,B,C}三者的事务数,然后除以事务总数

antecedentsupport=支持前面的=>,表示支持{A,C}

responsesupport=支持=>后面的内容,表示支持{B}

置信度=在我们观察到{A,C}之后,该转换另外包含{B}的可能性有多大。把它想象成给定{A,C}的条件概率pB

提升:提升的定义可以如下所示:。这意味着,如果提升<1,则{A,C}和{B}同时发生的频率低于预期。如果升力大于1,则{A,C}和{B}一起出现的频率比预期的要高

杠杆率大致相同。它还比较了预期的共生现象和观察到的共生现象。进一步的解释,例如

什么是好的提升/杠杆是主观的,但我建议提升>1。如果涉及到规则,我会更多地关注信心