OneR算法的Python简单实现
OneR算法就是,在已有数据中,根据具有相同特征值的个体最可能属于哪个类别进行分类。即取效果最好的那个特征进行分类。
#-*- coding=utf-8 -*-
#
import numpy as np
from sklearn.datasets import load_iris
from collections import defaultdict
from operator import itemgetter#该算法目的是通过这四个特征中的一个以分辨种类,即,如果某一植物的特征feature_index 的离散值为valu
#那么该植物最有可能是most_frequent_class,错误率为error
#X为离散后的数据,y_true为每组数据的植株种类,feature_index为以第几个特征为标准,value为特征值
def train_feature_value(X,y_true,feature_index,value):class_counts = defaultdict(int)for sample,y in zip(X,y_true):if sample[feature_index] == value:class_counts[y]+=1sorted_class_counts = sorted(class_counts.items(),key=itemgetter(1),reverse=True)print(sorted_class_counts)most_frequent_class = sorted_class_counts[0][0]print(most_frequent_class)incorrect_predictions = [class_count for class_vlue,class_count in class_counts.items() if class_vlue != most_frequent_class]print(incorrect_predictions)error = sum(incorrect_predictions)return most_frequent_class,errorif __name__ == '__main__':#从scikit-learn库中读取内置的“Iris植物分类数据集”dataset = load_iris()x = dataset.data#每株植物的四个特征y = dataset.target#每株植物的种类,有4个种类#求4个特征的平均值attribute_means = x.mean(axis=0)#当该值大于平局值时为1,小于平局值时为0,完成原始数据的离散化x_d = np.array(x>=attribute_means,dtype='int')train_feature_value(x_d,y,0,1)#TODOpredictors = {}errors = []
OneR算法的Python简单实现相关推荐
- Gillespie算法的Python简单实现(实例)
Gillespie算法的Python简单实现(实例) 文章目录 Gillespie算法的Python简单实现(实例) 前言 一.Gillespie是什么? 二.题目 三.代码 1.引入库 2.类定义 ...
- 鲸鱼算法与Python简单可视化测试(1)
文章目录 1. 鲸鱼算法原理 2. 鲸鱼算法的python实现 2.1 问题描述 2.2 初始化 2.3 可视化 3. 可视化结果 参考文献 1. 鲸鱼算法原理 鲸鱼算法是一种根据鲸鱼围捕猎物行为抽象 ...
- EM算法及python简单实现
目录 1.摘要 2.EM算法简介 3.预备知识 3.1贝叶斯公式 3.2 极大似然估计 3.2.1似然函数 3.2.2问题描述 3.2.3极大似然函数估计值的求解步骤 3.3Jensen不等式(琴生不 ...
- OneR算法_0(python数据挖掘入门与实践-实验2)
文章目录 结果 代码 结果 代码 from sklearn.datasets import load_iris import numpy as np from collections import d ...
- 维特比算法的python的简单实现
维特比算法的python简单实现 简单介绍 实现了李航书籍p210的例子,例子非常经典.我有三个盒子,每个盒子都有红球和白球,我观测到了三次结果:红.白和红,现在需要求出盒子的可能序列是什么. 通过这 ...
- python数据挖掘-oneR算法
以下参考自<python数据挖掘入门与实战> 1.4分类 已知类别的数据集,经过训练得到一个分类模型,再用模型对类别未知的的数据进行分类.比如垃圾邮件过滤器 离散化:数据集的特征为连续值, ...
- Python数据挖掘-OneR算法简介
OneR算法 内容来源于<Python数据挖掘入门与实践> 在末尾有源代码,但需要使用Jupyter notebook,大家可以去我的另一篇文章找安装教程.http://blog.csdn ...
- Python数据挖掘学习——鸢尾花分类、OneR算法
<Python数据挖掘入门与实践>第一章内容,实现一个简单的分类处理,实现OneR算法. OneR算法的思路很简单,它根据已有的数据中,具有相同特征值的个体最可能属于哪个类别进行分类.On ...
- python实现雪花动态图_如何通过雪花算法用Python实现一个简单的发号器
实现一个简单的发号器 根据snowflake算法的原理实现一个简单的发号器,产生不重复.自增的id. 1.snowflake算法的简单描述 这里的snowflake算法是用二进制的,有64位.其中41 ...
最新文章
- CCSP-防火墙学习笔记第6章
- hdu 4568 Hunter bfs建图+TSP状压DP
- 模块之hashlib模块
- win7-64bit下基于VMware12.5安装rhel-server-6.3-i386
- 安卓平板 python_使用安卓手机或平板对microbit进行编程
- python网课答案查询_中国大学慕课Python编程基础期末考试查题公众号答案
- maven怎么强制updating_业余草 maven异常:Updating Maven Project 的统一解决方案
- deepinu盘制作工具_U盘引导盘制作工具Rufus 3.11.1678 正式版
- wxpython使用_wxPython学习笔记(二)
- 如何把Backtrack 5安装到U盘/Backtrack 4安装方法
- win7访问服务器共享文件夹提示没有权限,win7系统无法访问共享文件夹提示权限不足的解决方法...
- javaweb 图书管理系统完整代码_群晖 + Docker + Calibre-Web 搭建电子书管理系统
- python|图片生成视频MP4
- better-scroll
- Ubuntu设置MySQL远程访问
- 一图掌握PEST分析模型及案例
- BUAA OO第二单元作业总结
- LIS.LCS.LCIS相关问题
- cisco ap 上线不成功
- 基于python爬虫————静态页面和动态页面爬取
热门文章
- 对php课程的建议,万紫千红总是春——对新课程语文教学、复习的建议与采饶措施a href=http://www.ruiwen.com/friend/list.php(教师中心专稿)/a...
- 12.14黄金白银实时行情分析,黄金原油解套操作策略
- Appium连接逍遥模拟器,解决Timing Out
- 人物动作姿势怎么画?
- 大数据的应用场景都有哪些(交通篇)
- 江苏省基础云计算机服务平台,江苏省一师一优课、一课一名师活动-江苏省基础教育云计算服务平台.doc...
- 风控Python绘图技法代码示例
- OpenStreetMap开放街道图(OSM)
- 【新手入门】deepfacelab的电脑配置要求
- pd虚拟机安装Windows后如何退出(进入)融合模式