numpy数据集练习

安装scipy

import numpy

from sklearn.datasets import load_iris

 

#从sklearn包自带的数据集中读出鸢尾花数据集data

data = load_iris()

 

#查看data类型,包含哪些数据

print('数据类型是:',type(data))

print('包含的数据有:',data.keys())

 

#取出鸢尾花特征和鸢尾花类别数据,查看其形状及数据类型

iris_feature = data['feature_names'],data['data']

print('鸢尾花的特征是:',iris_feature)

iris_target = data['target_names']

print('鸢尾花的类别数据是:',iris_target)

iris_shape = iris_target,data['target']

print('鸢尾花的形状是:',iris_shape)

print('鸢尾花的数据类型是:',type(iris_shape))

 

#取出所有花的花萼长度(cm)的数据

sepal_length = numpy.array(list(len[0] for len in data['data']))

print('所有花萼长度是:',sepal_length)

 

#取出所有花的花瓣长度(cm) + 花瓣宽度(cm)的数据

petal_length = numpy.array(list(len[2] for len in data['data']))

petal_length.resize(15,10)

petal_width = numpy.array(list(len[3] for len in data['data']))

petal_width.resize(15,10)

iris_lens = (petal_length,petal_width)

print('所有花瓣的长度+宽度是:',iris_lens)

 

#取出某朵花的四个特征及其类别。

print('特征是:',data['data'][0])

print('类别是:',data['target'][0])

 

#将所有花的特征和类别分成三组,每组50个

iris_setosa = []        #存放类别为setosa的数据组

iris_versicolor = []    #存放类别为versicolor的数据组

iris_virginica = []     #存放类别为virginica的数据组

##利用for循环分类

for x in range(0,150):

    if data['target'][x] == 0:

        datas = data['data'][x].tolist()

        datas.append('setosa')

        iris_setosa.append(datas)            #当target为0时,对应setosa类型,生成数据组

    elif data['target'][x] == 1:

        datas = data['data'][x].tolist()

        datas.append('versicolor')

        iris_versicolor.append(datas)        #当target为1时,对应versicolor类型,生成数据组

    else:

        datas = data['data'][x].tolist()

        datas.append('virginica')

        iris_versicolor.append(datas)        #其余的对应virginica类型,生成数据组

 

#生成新的数组,每个元素包含四个特征 + 类别

new_datas = (iris_setosa,iris_versicolor,iris_virginica)

print('生成的新数组是:',new_datas)

posted @ 2018-11-05 11:29  曾霖  阅读(219)  评论(0编辑  收藏  举报