一、iris数据集简介

iris数据集的中文名是安德森鸢尾花卉数据集,英文全称是Anderson`s Iris data set。iris包含150个样本,对应数据集的每行数据。每行数据包含每个样本的四个特征和样本的类别信息,所以iris数据集是一个150行5列的二维表。

通俗地说,iris数据集是用来给花做分类的数据集,每个样本包含了花萼长度、花萼宽度、花瓣长度、花瓣宽度四个特征(前4列),我们需要建立一个分类器,分类器可以通过样本的四个特征来判断样本属于山鸢尾(setosa)、变色鸢尾(versicolor)、维吉尼亚鸢尾(virginica)这三个名词都是花的品种。iris的每个样本都包含了品种信息,即目标属性(第5列,也叫target或label)
如图所示部分数据:在这里插入图片描述
iris在机器学习中的应用:

  1. 属于监督式学习应用:根据花的四个特征预测鸢尾花卉属于(iris-setosa,iris-versicolour,iris-virginica)中的那一品种。
  2. 机器学习中经典案例,简单而具有代表性。

二、基本数据操作和模型训练

1.加载iris数据集

# iris数据集加载
from sklearn import datasets
iris = datasets.load_iris()

2.展示所有数据

#展示数据
print(iris.data
    )

3.展示每列的属性名

print(iris.feature_names)

4.展示输出目标结果以及结果的含义

print(iris.target)
print(iris.target_names)

5.查看输入和输出数据类型

print(type(iris.data))
print(type(iris.target))

6.确认行列维度

print(iris.data.shape)
print(iris.target.shape)

7.给x,y赋值

X =iris.data
Y = iris.target

8.利用knn模型进行预测结果

from sklearn.neighbors import KNeighborsClassifier
#创建实例,假设k值为1
knn = KNeighborsClassifier(n_neighbors=1)
#训练数据集模型
knn.fit(x,y)

9.给定特征的值预测花的品种

#预测某种花的品种
knn.predict([[1,2,3,4]])

在这里插入图片描述
得到数组的数据 “2” ,它代表的是花萼长度为1、花萼宽度为2、花瓣长度为3、花瓣宽度为4的鸢尾花卉预测结果的品种是第三种:维吉尼亚鸢尾(virginica)

#多种花的预测
x_test = [[1,2,3,4],[2,4,1,2]]
knn.predict(x_test)
`

在这里插入图片描述
得到数组的数据 “2” 和 “0”,它代表的是

  • 花萼长度为1、花萼宽度为2、花瓣长度为3、花瓣宽度为4的鸢尾花卉预测结果的品种是第三种:维吉尼亚鸢尾(virginica)
  • 花萼长度为2、花萼宽度为4、花瓣长度为1、花瓣宽度为2的鸢尾花卉预测结果的品种是第一种:山鸢尾(setosa)
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐