python定义一个函数使用Confidence计算一个频繁项集对另外一个频繁项集的置信度,输出置信度>0.6的数据
时间: 2024-02-09 18:12:21 浏览: 115
数据挖掘一节频繁项集
可以使用以下代码实现:
```python
def calc_confidence(itemset1, itemset2, support_dict):
# 计算 itemset1 对 itemset2 的置信度
support_itemset1 = support_dict[tuple(itemset1)]
support_itemset2 = support_dict[tuple(itemset2)]
confidence = support_itemset2 / support_itemset1
return confidence
# 示例数据
freq_itemsets = [[1,2], [1,3], [2,3], [1,2,3], [1,2,4], [2,3,4]]
support_dict = {(1, 2): 4, (1, 3): 3, (2, 3): 3, (1, 2, 3): 2, (1, 2, 4): 1, (2, 3, 4): 1}
# 遍历每个频繁项集对,计算置信度并输出
for itemset1 in freq_itemsets:
for itemset2 in freq_itemsets:
if set(itemset1).issubset(set(itemset2)):
confidence = calc_confidence(itemset1, itemset2, support_dict)
if confidence > 0.6:
print(f"{itemset1} -> {itemset2}, confidence={confidence}")
```
上述代码中,`calc_confidence` 函数用于计算置信度,输入参数依次为两个频繁项集和所有频繁项集的支持度字典。遍历所有频繁项集对,如果第一个频繁项集是第二个频繁项集的子集,则计算置信度并判断是否大于0.6,如果是则输出结果。
阅读全文