鸢尾花数据集简介

Iris数据集作为入门经典数据集。Iris数据集是常用的分类实验数据集,早在1936年,模式识别的先驱Fisher就在论文The use of multiple measurements in taxonomic problems中使用了它 (直至今日该论文仍然被频繁引用)。
Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集。数据集包含150个数据集,分为3类,每类50个数据,每个数据包含4个属性:花萼长度(sepal length),花萼宽度(sepal width),花瓣长度(petal length),花瓣宽度(petal width),可通过4个属性预测鸢尾花卉属于(Setosa,Versicolour,Virginica)三个种类中的哪一类。在三个类别中,其中有一个类别和其他两个类别是线性可分的。
在sklearn中已内置了此数据集。

代码

import pandas as pd
import pydotplus
import numpy as np
from IPython.display import Image, display
from sklearn import preprocessing
from sklearn import tree
from sklearn.datasets import load_iris
import matplotlib.pyplot as plt
%matplotlib inline
from matplotlib.colors import ListedColormap# 载入数据
iris = load_iris()
# 构建决策树
clf = tree.DecisionTreeClassifier(max_depth=5)# 深度为4层时有1个结果仍然模糊,5层就足够
clf = clf.fit(iris.data, iris.target)
# 数据可视化
dot_data = tree.export_graphviz(clf,out_file = None,feature_names = iris.feature_names,class_names = iris.target_names,filled=True,rounded=True)
graph = pydotplus.graph_from_dot_data(dot_data)
display(Image(graph.create_png()))# 整个数据集分类结果可视化
x=iris.data[:,2:4]   # 取出花瓣的长和宽
y=iris.target       # 取出标签#计算散点图的坐标上下界
x_min,x_max=x[:,0].min() -0.5, x[:,0].max()+0.5
y_min, y_max=x[:,1].min()-0.5, x[:,1].max()+0.5
#绘制边界
cmap_light=ListedColormap(['#AAAAFF','#AAFFAA','#FFAAAA'])
h=0.02
xx,yy=np.meshgrid(np.arange(x_min,x_max,h),np.arange(y_min,y_max,h))clf = tree.DecisionTreeClassifier(max_depth=5)
clf = clf.fit(x, y)
Z=clf.predict( np.c_[xx.ravel(),yy.ravel()])
Z=Z.reshape(xx.shape)plt.figure()
plt.pcolormesh(xx,yy,Z,cmap=cmap_light)plt.scatter(x[:,0],x[:,1],c=y)plt.xlim( xx.min(), xx.max() )
plt.ylim( yy.min(),yy.max() )
plt.show()

结果展示


一点小提示

在Python中使用pydotplus绘制决策树图形时,需要用到GraphViz模块,我用的是Anaconda,直接在Anaconda下安装运行结果报异常,无法找到GraphViz模块,后查找到用下载GraphViz模块,一般下载该模块的stabel版本,并将其添加到环境变量中来。然后在python下安装pydotplus,运行代码正常得到结果。
大家可参考:pydotplus安装和基本入门

鸢尾花决策树分类及可视化相关推荐

  1. 决策树可视化:鸢尾花数据集分类(附代码数据集)

    决策树 数据集 实战 可视化 评价 决策树是什么?决策树(decision tree)是一种基本的分类与回归方法.举个通俗易懂的例子,流程图就是一种决策树. 有没有车,没车的话有没有房,没房的话有没有 ...

  2. python决策树分类鸢尾花_基于决策树—鸢尾花分类

    决策树算法广泛应用于:语音识别.医疗诊断.客户关系管理.模式识别.专家系统等,在实际工作中,必须根据数据类型的特点及数据集的大小,选择合适的算法. 本文选择经典案例--<鸢尾花分类> 一. ...

  3. python决策树分类 导入数据集_BPNN、决策树、KNN、SVM分类鸢尾花数据集Python实现...

    数据集处理 数据获取 使用sklearn的dataset获取数据 from sklearn import datasets from sklearn.model_selection import tr ...

  4. 数据分享|PYTHON用决策树分类预测糖尿病和可视化实例

    全文下载链接:http://tecdat.cn/?p=23848 在本文中,决策树是对例子进行分类的一种简单表示.它是一种有监督的机器学习技术,数据根据某个参数被连续分割.决策树分析可以帮助解决分类和 ...

  5. 决策树算法之鸢尾花特征分类可视化详解【机器学习】

    文章目录 一.前言 1.1 本文原理 1.2 本文目的 二.实验过程 2.1 使用scikit-learn机器学习包的决策树算法,使用4个特征对鸢尾花进行分类: 2.2使用ID3算法对天气与踢球数据集 ...

  6. 【机器学习】决策树案例二:利用决策树进行鸢尾花数据集分类预测

    利用决策树进行鸢尾花数据集分类预测 2 利用决策树进行鸢尾花数据集分类预测 2.1 导入模块与加载数据 2.2 划分数据 2.3 模型创建与应用 2.4 模型可视化 手动反爬虫,禁止转载: 原博地址 ...

  7. (决策树,朴素贝叶斯,人工神经网络)实现鸢尾花数据集分类

    from sklearn.datasets import load_iris # 导入方法类iris = load_iris() #导入数据集iris iris_feature = iris.data ...

  8. 机器学习(9)决策树(决策树分类鸢尾花)

    目录 一.基础理论 二.决策树分类鸢尾花 API 1.读取数据 2.划分数据集 3.创建决策树预估器,训练 4.模型评估 方法一:比对法 方法二:计算错误率 代码 一.基础理论 决策树思想: 程序设计 ...

  9. Python决策树鸢尾花类别分类

    Python决策树鸢尾花类别分类 引入使用到的模块 #决策树 鸢尾花类别 import sklearn.datasets as dSets import pandas as pd; import ma ...

最新文章

  1. Nginx could not build the server
  2. 【Linux】一步一步学Linux——tar命令(62)
  3. 远程协助TeamView软件 轻松控制计算机
  4. java中输出时间12小时制转换为24小时制显示
  5. python中的logger之二
  6. 统计学习方法概论---分类问题
  7. 用ProGet搭建本地私有NuGet仓库
  8. Tomcat中的零停机部署(和回滚); 演练和清单
  9. C#中yield return用法
  10. 携手伙伴谋增长 同心协力齐飞飏
  11. ⭐️C#零基础到入门 ⭐️| 带你认识编程中的—23种设计模式 六大设计原则
  12. 大型互联网公司如何自建拥有独立AS号的IP网络
  13. 清理注册表 php,如何彻底清理注册表?小编教你清理注册表操作方法
  14. SpringBoot+Mybatis-plus+aop实现一个类似JPA的@Audited注解(字段审计)功能
  15. 请问matlab里面exp函数怎么用啊,Matlab基本函数-exp函数
  16. 微信android自动播放视频文件,vue-player或TcPlayer在微信内自动播放video和audio
  17. src refspec xxx does not match any 错误处理办法
  18. 【BZOJ5020】[THUWC 2017]在美妙的数学王国中畅游 泰勒展开+LCT
  19. 科技和商业模式的发展真的会导致很多人失业吗?
  20. 1-2数据库安装配置管理

热门文章

  1. W3school导航条实现的两种方法
  2. 华为路由器基础知识和命令
  3. Nginx安装及详细配置
  4. [CSS]常见布局技巧
  5. echarts 多条折线时数量由多到少更新数据时残留问题
  6. C语言中全局数组外部引用的小问题
  7. c语言编程一对新出生的兔子,C语言 有一对兔子。从出生后第三个月起每个月都生一对兔子,小兔子长到三个月后又生一对小兔子,假如兔子都不死,问每个月的兔子总数为多少。...
  8. 软件测试的正向思维,反向思维
  9. 帆软部署服务器linux,部署集成
  10. linux免采集卡直播ps4,PS4游戏直播采集卡使用教程详解