numpy数据集练习
#安装scipy,numpy,sklearn包 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)