作业六

#. 安装scipy,numpy,sklearn包
#2. 从sklearn包自带的数据集中读出鸢尾花数据集data
from sklearn.datasets import load_iris
import numpy as np
data=load_iris()

#3.查看data类型,包含哪些数据 print(type(data)) print(data.keys())

#取出鸢尾花特征和鸢尾花类别数据,查看其形状及数据类型 irisTarget = data['target']##鸢尾花的特征 irisTargetName = data['target_name']##鸢尾花的三种类型 print(irisTarget,irisTargetName)
#5.取出所有花的花萼长度(cm)的数据 irisCalyx = np.array({'length': list(len[0] for len in data['data'])}) print(irisCalyx)

# 6.取出所有花的花瓣长度(cm)+花瓣宽度(cm)的数据 petalLenth=[x[2] for x in data['data']]#所有花花瓣的长度 petalWidth=[x[3] for x in data['data']]#所有花花瓣的宽度 petalLenthAndWidth=np.array([petalLenth,petalWidth])#所有花花瓣的长度和宽度 print(petalLenthAndWidth)

#7某朵花的四个特征和类别 someFlower=(data['data'][0],data['target_names'][0]) someFlower

#8定义三个列表来存放不同类型花朵的类别 setosa=[] #存放类为0的花朵 versicolor=[] #存放类为1的花朵 virginica=[] #存放类为2的花朵
# 用for循环分类,根据观察可知当target为0时对应setosa类型,1为versicolor,2为virginica for i in range(0, 150): if iris_data['target'][i] == 0: # 种类为setosa,生成一条setosa类的鸢尾花花数据 data = iris_data['data'][i].tolist() data.append('setosa') setosa.append(data) elif iris_data['target'][i] == 1: # 种类为1为versicolor,生成一条1为versicolor类的鸢尾花数据 data = iris_data['data'][i].tolist() data.append('versicolor') versicolor.append(data) else: data = iris_data['data'][i].tolist() data.append('virginica') virginica.append(data)

#9形成新的数组来存放三个类别的花朵 newData=(np.array([setosa,versicolor,virginica])) print(newData)

 

posted @ 2018-10-15 11:47  傻猪一号  阅读(194)  评论(0编辑  收藏  举报