Python数据挖掘学习——鸢尾花分类、OneR算法

本文介绍了Python数据挖掘中的一种简单分类算法——OneR,该算法基于特征值的类别出现频率来确定分类规则。通过遍历特征和计算错误率,选择错误率最低的特征作为分类标准。文章中还提到了在实际操作中遇到的问题及修正后的代码,以鸢尾花数据集为例进行了演示。
摘要由CSDN通过智能技术生成

《Python数据挖掘入门与实践》第一章内容,实现一个简单的分类处理,实现OneR算法。

OneR算法的思路很简单,它根据已有的数据中,具有相同特征值的个体最可能属于哪个类别进行分类。OneR也就是One Rule的缩写,即“一条规则”,表示我们只选取特征中分类效果最好的一个作为分类的依据。虽然这个算法十分的简单,但是在很多真实数据集上却有着不凡的表现。算法首先遍历每个特征的每个取值,对于每个特征值,统计它在各个类别中出现的次数,找到它出现次数最多的类别,并统计它在其他类别中出现的次数。接着,我们计算每个特征的错误率——把该特征的各个取值的错误率相加。最后选取错误率最低的特征作为唯一的分类标准,也就是“One Rule”。

在《Python数据挖掘入门与实践》一书中的代码在我实验的过程中有一些小问题,下面的代码是经过修改整合之后的,可以正常运行的代码。

实例中采用鸢尾花数据集,该数据集可以通过sklearn包中直接载入。

代码如下:

"""
分类问题的简单实例
使用鸢尾花数据集
实现OneR算法
"""
from sklearn.model_selection import train_test_split #分割数据集成为训练集和测试集(默认是25%)
from sklearn.datasets import load_iris
import numpy as np
from collections import defaultdict
from operator import itemgetter


dataset = load_iris()
X = dataset.data #是一个ndarray
y = dataset.target
n_samples, n_features &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值