【Python机器学习】Apriori算法——示例:发现毒蘑菇的相似特征

有时我们并不想寻找所有的频繁项集,而只对包含某个特定元素项的项集感兴趣。在下面这个例子里,我们会寻找毒蘑菇中的一些公共特征,利用这些特征就可以避免吃到那些有毒的蘑菇。

UCI的机器学习数据集合中有一个关于肋形蘑菇的23中特征的数据集,每一个特征都包含一个标称数据值。我们必须将这些标称数据值转化成一个集合。我们已经把每个蘑菇特征样本转换成一个特征集合,其中枚举了每个特征的所有可能值,如果某个样本包含特征,那么该特征对应的整数值被包含数据集中。

下面观察数据:

第一个特征表示有毒或者可食用。如果某样本有毒,则值为2。如果可食用,则值为1.下一个特征是蘑菇伞的形状,有六种可能的值,分别用整数3-8表示。

为了找到毒蘑菇中存在的公共特征,可以运行Apriori算法来寻找包含特征值为2的频繁项集:

python 复制代码
mushDataSet=[line.split() for line in open('test/mushroom.dat').readlines()]
#print(mushDataSet)
L,suppData=apriori(mushDataSet,minSupport=0.3)
for item in L[1]:
    if item.intersection('2'):
        print(item)

上述代码中在Apriori算法结果中搜索了包含有毒特征2 的频繁项集,下面,对更大的项集来重复上述过程:

python 复制代码
for item in L[3]:
    if item.intersection('2'):
        print(item)

接下来,需要观察这些特征,以便知道了解野蘑菇的那些方面。

相关推荐
Metaphor69239 分钟前
Python 自动化办公:如何轻松在 PDF 中导入与导出表单数据
python·pdf·自动化
lzhdim4 小时前
AI的分类
人工智能·算法·机器学习·分类·数据挖掘
程序员海军6 小时前
用了两年多 GPT,我最近开始换模型了,还折腾了个求职避坑 Agent
前端·人工智能·后端
AIsoft_86896 小时前
人才评估中的关键信息如何沉淀?
人工智能·iphone
紧跟先前的步伐6 小时前
Go AI Agent 实战 06|JSON 结构化输出与 Go 后端校验
人工智能·ai·golang
凤凰院凶涛QAQ7 小时前
《Java版数据结构 & 集合类剖析》Map & Set & 反射:“从哈希碰撞到红黑树转换,反射帮你扒开 HashMap 的桶数组看个究竟”
java·数据结构·算法
H.莓飛7 小时前
【数据结构】排序_OJ题(一):计数、桶与排序后的处理
java·开发语言·数据结构
vibecoding778 小时前
Codex 分层用模型完整教程:让 GPT-6.1 Sol 拍板、GPT-6 Luna 跑侦察
人工智能·gpt
wangchunyu1148 小时前
JAVA AQS与Lock实现原理(含CAS)
java·开发语言·word
新知图书8 小时前
1.3 启动第一个机器人
人工智能·机器人