You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.2 KiB
1.2 KiB
8.4 发现毒蘑菇的特性
最后我们来尝试使用 Apriori 算法来寻找毒蘑菇中的一些公共特征,利用这些特征就能避免吃到那些有毒的蘑菇。现在有这样一个数据集,数据集合中有一个关于蘑菇的 23 种特征的数据集,每一个特征都包含一 个标称数据值。部分数据截图如下:
其中每行的第一列为标签,1 表示蘑菇无毒, 2 表示蘑菇有毒。接下来,为了找到毒蘑菇的共性特征,我们可以使用刚刚动手实现的 Apriori 算法来含有标签值为 2 的频繁项集。如寻找含有 3 个元素的频繁项集。
import pandas as pd
# 读取蘑菇数据
data = pd.read_csv('./data.csv').values()
# 调用上一节中实现的apriori算法
L, _ = apriori(data, minsupport=0.4)
# 遍历含有3个元素的频繁项集
for item in L[3]:
if item.intersection(2):
# 打印出含有标签值为2的频繁项集
print(item)
结果如下:
frozenset([63, 59, 2, 93])
frozenset([39, 2, 53, 34])
frozenset([2, 59, 23, 85])
frozenset([2, 59, 90, 85])
frozenset([39, 2, 36, 34])
frozenset([39, 63, 2, 85])
可以看出,当这些特征一起出现时,表示该蘑菇很有可能是有毒的。