numpy练习
1. 安装scipy,numpy,sklearn包
2. 从sklearn包自带的数据集中读出鸢尾花数据集data
3.查看data类型,包含哪些数据
4.取出鸢尾花特征和鸢尾花类别数据,查看其形状及数据类型
5.取出所有花的花萼长度(cm)的数据
6.取出所有花的花瓣长度(cm)+花瓣宽度(cm)的数据
7.取出某朵花的四个特征及其类别。
8.将所有花的特征和类别分成三组,每组50个
9.生成新的数组,每个元素包含四个特征+类别
10.计算鸢尾花花瓣长度的最大值,平均值,中值,均方差。
11.显示鸢尾花某一特征的曲线图,散点图。
1 #安装scipy,numpy,sklearn包 2 import numpy as np 3 from sklearn.datasets import load_iris 4 5 #sklearn包读取鸢尾花data 6 data = load_iris() 7 8 #查看data数据类型 9 print('data_type',type(data)) 10 print('data_key',data.keys())#列名 11 12 #取出鸢尾花特征和类别数据 13 data_feature = data.feature_names 14 iris_data = data.data 15 print('鸢尾花的特征:',data_feature,iris_data) 16 data_target = data.target_names 17 print('鸢尾花类别:',data_target) 18 iris_data = data.target 19 print('数据类型:',type(iris_data)) 20 21 #取出所有话的花萼长度数据 22 sepal_length = np.array([length[0] for length in data['data']]) 23 print('所有花萼的长度是:',sepal_length) 24 25 #取出所有花的花瓣长度和宽度 26 for item in data: 27 petal_len = np.array([length[2] for length in data.data])#花瓣长度 28 petal_wid = np.array([length[3] for length in data.data])#花萼宽度 29 30 iris_len = (petal_len,petal_wid) 31 print(iris_len) 32 33 #取出花的四个特征和类别 34 print(data.data[1],data.target[1]) 35 36 #所有花的特征和类别分成三组 37 iris_set = [] 38 iris_ver = [] 39 iris_vir = [] 40 41 #遍历所有数据 42 for i in range(0,150): 43 if data.target[i] == 0: 44 Data = data.data[i].tolist() 45 Data.append('setosa') 46 iris_vir.append(Data) 47 print(iris_set,iris_ver,iris_vir) 48 49 #生成新的数组,每个元素包含四个特征 50 iris_result = np.array([iris_set,iris_ver,iris_vir]) 51 print('分组:',iris_result) 52 53 #计算鸢尾花花瓣长度的最大值,平均值,中值,均方差 54 petal_length = np.array([length[3] for length in data.data]) 55 print(petal_length) 56 print('花瓣长度的最大值',np.mean(petal_length)) 57 print('平均值:',np.mean(petal_length)) 58 print('中值:',np.median(petal_length)) 59 print('均方差:',np.std(petal_length)) 60 61 #画曲线图和散点图 62 import matplotlib.pyplot as plt 63 plt.plot(np.linspace(0,150,num=150),petal_len,marker = "o") 64 plt.show() 65 plt.scatter(np.linspace(0,150,num=150),petal_len,marker="o") 66 plt.show()