如何在Pyspark中使用Spark FPgrowth获取关联规则的提升值?

2024-09-27 21:27:43 发布

您现在位置:Python中文网/ 问答频道 /正文

fpGrowth = FPGrowth(itemsCol="items", minSupport=0.5, minConfidence=0.6)
model = fpGrowth.fit(df)
model.associationRules.show()

使用上面的代码,我只能得到每个关联规则的置信度。但是如何使用Pyspark中的Spark FP growth来获得每个关联规则的提升值?在

在这种情况下,我只有这两个数据帧,如何在第一个数据帧的置信值后面自动添加提升值(而不是手动添加)?在

^{pr2}$

Tags: 数据代码dfmodel规则showitemsfit
2条回答

很容易计算:Lift是置信C商。所以规则的提升是置信度C(a->b)/C(b)。例如,如果bread -> cheese的置信度是1.2,而{}的置信度是1.1,那么提升就是{}。在

here

df1.join(df2,df2.items==df1.consequent, 'left').select("antecedent","consequent","confidence","support").show()

+     +     +         +         +
|antecedent|consequent|        confidence|           support|
+     +     +         +         +
|    [2, 1]|       [5]|0.6666666666666666|0.6666666666666666|
|       [2]|       [5]|0.6666666666666666|0.6666666666666666|
|       [1]|       [5]|0.6666666666666666|0.6666666666666666|
|       [2]|       [1]|               1.0|               1.0|
|       [5]|       [1]|               1.0|               1.0|
|    [5, 2]|       [1]|               1.0|               1.0|
|    [5, 1]|       [2]|               1.0|               1.0|
|       [5]|       [2]|               1.0|               1.0|
|       [1]|       [2]|               1.0|               1.0|
+     +     +         +         +

相关问题 更多 >

    热门问题