一: 环境准备:

1.导入的库:

importnumpy as npimportmatplotlib.pyplot as pltimportpandas as pdimport mglearn

2.导入数据集

from sklearn.datasets importload_iris

iris_dataset= load_iris()

二. 划分训练数据和测试数据

1. train_test_split: 将数据集打乱并进行拆分

from sklearn.model_selection importtrain_test_split

X_train, X_test, y_train, y_test=train_test_split(

iris_dataset['data'], iris_dataset['target'], random_state=0)

其中,random_state=0,表示每次调用train_test_split返回的输出都是不变的,即随机数生成器的种子是相同的.

生成的

2.scatter_matrix: 使用pandas绘制散点图矩阵(即取出两行,一行的元素作为横坐标,一行的元素作为纵坐标)

iris_dataframe = pd.DataFrame(X_train, columns=iris_dataset.feature_names)  #columns设置索引

grr = pd.plotting.scatter_matrix(iris_dataframe, c=y_train, figsize=(15,15),

marker='o', hist_kwds={'bins':20}, s=60, alpha=.8, cmap=mglearn.cm3)

参数解释: frame:数据的dataframe,本例为4*150的矩阵; c是颜色,本例中按照y_train的不同来分配不同的颜色; figsize设置图片的尺寸; marker是散点的形状,'o'是圆形,'*'是星形 ; hist_kwds是直方图的相关参数,{'bins':20}是生成包含20个长条的直方图;

s是大图的尺寸 ; alpha是图的透明度; cmap是colourmap,就是颜色板

三 k近邻算法

1.原理: 将新数据点放到训练集中,找出训练集中与新数据点直线距离最近的若干个点,然后找出这若干个点属于哪个类别的点最多,就将训练集视为哪个类别.

2.使用方法

2.1.scikit-learn中所有的机器学习模型都在各自的类中实现,这些类被称为Estimator类。k近邻分类算法是在neighbors模块的KNeighborsClassifier类中实现。

from sklearn.neighbors import KNeighborsClassifier

2.2.使用k近邻首先需要将KNeighborsClassifier实例化成一个对象.

knn = KNeighborsClassifier(n_neighbors=1)

knn对象可以用训练数据重新训练,也可以对新数据点进行预测,也可以从训练数据中提取信息.

2.3 基于训练集构建模型

调用knn对象的fit方法,输入参数X_train和y_train

In: knn.fit(X_train,y_train)

Out: KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',

metric_params=None, n_jobs=None, n_neighbors=1, p=2,

weights='uniform')

2.4 做出预测

2.4.1 构建numpy数组(scikit-learn输入的数据必须是二维数组)

X_new = np.array([[5,2.9,1,0.2]])print(X_new.shape)

2.4.2 调用predict函数

prediction =knn.predict(X_new)print(prediction)print(iris_dataset['target_names'][prediction])

2.5 评估模型

y_pred =knn.predict(X_test)print(y_pred)print(np.mean(y_pred == y_test))

print(knn.score(X_test,y_test))

---摘录自python机器学习基础教程

python分类器鸢尾花怎么写_python机器学习基础教程-鸢尾花分类相关推荐

  1. python分类器鸢尾花怎么写_python机器学习基础教程:鸢尾花分类

    首先导入必要的库: import numpy as np import matplotlib.pyplot as plt import pandas as pd import mglearn 复制代码 ...

  2. Python机器学习基础教程——鸢尾花分类

    Python机器学习基础教程--鸢尾花分类 初识数据 训练数据与测试数据 观察数据-数据可视化 模型的建立与评估--K近邻算法 她还有一些鸢尾花的测量数据,这些花之前已经被植物学专家鉴定为属于 set ...

  3. Python机器学习基础教程 鸢尾花分类

    一.数据集分析 鸢尾花数据集保存在sklearn.datasets模块中,我们可以用load_iris函数加载数据,这个函数返回的iris对象是一个Bunch对象,与字典相似,包括键和值 此处打印出i ...

  4. python分类器分5类_Python机器学习之K近邻分类器

    KNN 现在,如果我们有一个分类任务.需要用到scikit-learn库的分类器对象. 分类器要完成的任务是,给定一种鸢尾花卉的测量数据,为这种花卉分类.最简单的分类器是近邻分类器.近邻算法搜索训练集 ...

  5. Python机器学习基础教程(1)Irises(鸢尾花)分类之新手上路

    一.感谢博客的内容提供的参考 标题:最新版学习笔记---Python机器学习基础教程(1)Irises(鸢尾花)分类---附完整代码 作者:非鱼子焉 地址:https://zhu-rui.blog.c ...

  6. python基础教程免费下载-《Python机器学习基础教程》高清版免费PDF下载

    Python机器学习基础教程-[德] 安德里亚斯·穆勒(Andreas C.Müller)[美]莎拉·吉多(Sarah Guido) 著,张亮(hysic) 译 下载地址1:网盘下载 下载地址2:网盘 ...

  7. Python机器学习基础教程-第2章-监督学习之K近邻

    前言 本系列教程基本就是摘抄<Python机器学习基础教程>中的例子内容. 为了便于跟踪和学习,本系列教程在Github上提供了jupyter notebook 版本: Github仓库: ...

  8. 除了 Python ,这些语言写的机器学习项目也很牛(二)

    2019独角兽企业重金招聘Python工程师标准>>> Python 由于本身的易用优势和强大的工具库储备,成为了在人工智能及其它相关科学领域中最常用的语言之一.尤其是在机器学习,已 ...

  9. python机器学习基础教程-学习笔记(一)

    了解 scikit-learn 及其用法是很重要的,但还有其他一些库也可以改善你的编程体验. scikit-learn 是基于 NumPy 和 SciPy 科学计算库的.此外,我们还会用到 panda ...

最新文章

  1. 08 | 事务到底是隔离的还是不隔离的
  2. 今年计算机考研时间公布,今年考研时间初步确定?
  3. 测试用例优先级划分_全面的质量保障体系之测试用例分级
  4. 度微尔开发者联盟网站
  5. 求链表的倒数第m个元素
  6. Spring Boot 线程池
  7. ubuntu18.04静态ip设置
  8. 生成xml_freemarker快速生成xml文件
  9. 奇虎360与腾讯之争再现高潮
  10. 如何进行坡度坡向分析教程
  11. React + Redux + Express + Mongodb 零基础开发完整大型商城网站视频教程(97 个视频)
  12. 初二年级估算要不要用计算机,期中备考:人教版1-6年级上册数学知识要点,抓紧为孩子收藏!...
  13. 【深度学习】 MAE|心中无码,便是高清
  14. 深圳软件测试 黑盒测试,深圳软件测试培训:常用控件黑盒测试方法有哪些?...
  15. ElasticSearch 7.x新特性体验-安装部署
  16. 首席新媒体黎想教程:一份完整的运营方案,应包含的7个方面
  17. 京成电铁:Yotsugi站呈献别具一格的《足球小将》装饰
  18. 基于原子核核外电子探讨原子结构
  19. 教你如何学好C/C++ 图文讲解
  20. 国外天气api 国际天气预报今天、未来3天、未来7天的天气预报信息接口

热门文章

  1. Spring事务管理3----声明式事务管理(1)
  2. 2分钟读懂Hadoop和Spark的异同
  3. [React Router v4] Intercept Route Changes
  4. dns (域名系统)
  5. (剑指Offer)面试题61:按之字形顺序打印二叉树
  6. 行走在泰国的7天8夜(曼谷篇-汤姆吉普森故居·四面佛·美食篇)
  7. python拼写检查_拼写检查 - Python文本处理教程™
  8. 0x00000000指令引用的内存不能为written_jvm的内存结构
  9. 十分钟带你入门最具Python风格的Gui库
  10. Python语言的应用领域