IRIS数据集介绍

本篇的主要内容:

  • 使用Pandas对IRIS导入的一些基本操作

IRIS数据集介绍

IRIS数据集也称作鸢尾花数据集,整个数据集共有150条数据,分为三类,每类50条数据,每一条数据都有四个属性:花萼长度,花萼宽度,花瓣长度,花瓣宽度,标签数据共有三种,分别是Setosa,Versicolour,Virginica。一般使用前面的四种属性数据来预测样本属于那种鸢尾花。
具体一些的介绍可以移步百度百科:IRIS数据集
或者这篇博客:iris数据集及简介
全部的数据:iris数据集

导入与基本操作

这里的介绍主要是之前博客中使用了这一些内容,在此简单记录一下。
首先是数据集的导入,有两种方式,第一种是直接使用pandas的read_csv()函数进行导入,例如:

datas = pd.read_csv('iris.csv')
# 看一下导入数据的前5行数据
print(datas.head(5))
# 或者print(datas[:5])
# 看一下列名称
columns_names = datas.columns.tolist()
print(columns_names)

输出:

['Unnamed: 0', 'Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']

   Unnamed: 0  Sepal.Length  Sepal.Width  Petal.Length  Petal.Width Species
0           1           5.1          3.5           1.4          0.2  setosa
1           2           4.9          3.0           1.4          0.2  setosa
2           3           4.7          3.2           1.3          0.2  setosa
3           4           4.6          3.1           1.5          0.2  setosa
4           5           5.0          3.6           1.4          0.2  setosa

可以看到实际上每一条数据有六列,第一列是DataFrame提供的序号,实际数据是后面的五列,前四列是属性,最后一列是分类。
在分类中,一般不会直接使用数据集中的分类(Setosa,Versicolour,Virginica),而是将这三种分类用数字代替,使用会方便一些,从这里来看,直接从sklearn包的datasets中导入会方便一些,添加引用:

from sklearn.datasets import load_iris

导入数据:

iris = load_iris()
# 看一下返回的数据类型
print(type(iris)) 

# 输出
# <class 'sklearn.utils.Bunch'>

转化为DataFrame:

df = pd.DataFrame(iris.data, columns=iris.feature_names)
print(df[:5])

输出:

   sepal length (cm)  sepal width (cm)  petal length (cm)  petal width (cm)
0                5.1               3.5                1.4               0.2
1                4.9               3.0                1.4               0.2
2                4.7               3.2                1.3               0.2
3                4.6               3.1                1.5               0.2
4                5.0               3.6                1.4               0.2

可以看到再datasets中导入的数据集与我们手动导入的还是有些区别的,最显著的就是将属性数据与标签数据分离了,查看标签数据:

# 注意这里导入的数据中 属性数据在 .data中  ,标签数据在 .target中
labels = iris.target
print(labels[:5])       # 前5行数据的分类都是第一类,也就是0

基本就酱,想到别的再记吧!

以上~

猜你喜欢

转载自blog.csdn.net/sinat_34328764/article/details/85529617