第六次作业--numpy数据集练习

1. 安装scipy,numpy,sklearn包

pip install scipy
pip install numpy

 

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

import numpy
from sklearn.datasets import load_iris

 

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

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

iris_feature=data['feature_names'],data['data']
iris_target=data.target,data.target_names
print('鸢尾花数据:',iris_feature)
print('鸢尾花形状类别:',iris_target)

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

sepal_len = numpy.array(list(len[0] for len in data['data']))
print('所有花萼长度:',sepal_len)

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

petal_len = numpy.array(list(len[2] for len in data['data']))
petal_len.resize(5,30) #重新分配花瓣长度
petal_wid = numpy.array(list(len[3] for len in data['data']))
petal_wid.resize(5,30)  #重新分配花瓣宽度
iris_lens = (petal_len,petal_wid)
print('所有花瓣长宽:',iris_lens)

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

print('某朵花的特征:',data['data'][0])
print('某朵花的类别:',data['target'][0])

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

iris_setosa = []     #target=o的花朵
iris_versicolor = [] #target=1的花朵
iris_virginica = []  #target=2的花朵
# 建立每种花的相应列表,存放数据
for i in range(0,150):
    if  data['target'][i] == 0:  # 类别为0的即为setosa,生成一条0为setosa类的鸢尾花花数据
        data1 = data['data'][i].tolist()
        data1.append('setosa')
        iris_setosa.append(data1)
    elif data['target'][i] == 1:  # 类别为1的即为versicolor,生成一条1为versicolor类的鸢尾花数据
        data1 = data['data'][i].tolist()
        data1.append('versicolor')
        iris_versicolor.append(data1)
    else:                          #剩下类别为2的归为virginica
        data1 = data['data'][i].tolist()
        data1.append('virginica')
        iris_virginica.append(data1)

 

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

new_array= numpy.array([iris_setosa, iris_versicolor, iris_virginica])
print("新的数组",new_array)

posted @ 2018-10-14 17:54  a-庄儿  阅读(330)  评论(0编辑  收藏  举报