机器学习iris数据集导入

来源:互联网 发布:淘宝1次破损补寄 编辑:程序博客网 时间:2024/06/16 11:22

Iris数据集在模式识别研究领域应该是最知名的数据集了,有很多文章都用到这个数据集。这个数据集里一共包括150行记录,其中前四列为花萼长度,花萼宽度,花瓣长度,花瓣宽度等4个用于识别鸢尾花的属性,第5列为鸢尾花的类别(包括Setosa,Versicolour,Virginica三类)。也即通过判定花萼长度,花萼宽度,花瓣长度,花瓣宽度的尺寸大小来识别鸢尾花的类别。

这个数据集可以从UCI数据集上直接下载,具体地址为:http://archive.ics.uci.edu/ml/datasets/Iris。打开页面后点击Data folder就可以下载到本地磁盘上,默认格式为逗号分隔的文本文件。也可以直接从sklearn包里datasets里导入,语法为:from sklearn.datasets import load_iris。

一、如果从本地磁盘上读入该数据集,可以采用pandas包里的read_excel或者read_csv方法,也可以利用python里面的csv包来处理。

具体如下:

import pandas as pd

data=pd.read_csv('iris.data')      #iris.data数据与程序文件存放在同一目录下

print data.head(5)  #可以查看一下前5行数据,检查是否读取正确

attributes=data[['sl','sw','pl','pw']]  #前四列属性简化为sl,sw,pl,pw
types=data['type'] #第5列属性为鸢尾花的类别

      sl   sw   pl   pw
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
5    5.4  3.9  1.7  0.4
6    4.6  3.4  1.4  0.3
7    5.0  3.4  1.5  0.2    

如果要读取单列数据,就采用data['sl']或者data['pl'],加入列属性值就可以。

二、如果从数据包里导入,直接利用sklearn包datasets模块导入 import load_iris。如下:

from sklearn.datasets import load_iris

iris=load_iris()   

attributes=iris.data  #获取属性数据
target=iris.target  #获取类别数据,这里注意的是已经经过了处理,target里0、1、2分别代表三种类别
labels=irs.feature_names #获取列属性值

如下打印出来的属性列数据:

[[ 5.1  3.5  1.4  0.2]
 [ 4.9  3.   1.4  0.2]
 [ 4.7  3.2  1.3  0.2]
 ..., 
 [ 6.5  3.   5.2  2. ]
 [ 6.2  3.4  5.4  2.3]
 [ 5.9  3.   5.1  1.8]]

原创粉丝点击