from sklearn.datasets import load_iris
import numpy as np
data=load_iris() #从sklearn包自带的数据集中读出鸢尾花数据集data,并判断其数据类型
print(data)
print("类型:",type(data))
print("包含数据:",data.keys()) #查看data类型,包含哪些数据集
iris_feature=data['data'],data['feature_names'] #取出鸢尾花特征和鸢尾花类别数据,查看其形状及数据类型
print("鸢尾花形状数据:",iris_feature)
iris_target=data.target
print("鸢尾花数据类型:",iris_target) type(iris_feature)
type(iris_feature)
type(iris_target)
iris_len=np.array(list(len[0] for len in data['data']))
print("所有花萼长度:",iris_len) #取出所有花的花萼长度(cm)的数据
iris1_len=np.array(list(len[2] for len in data['data'])) #遍历所有花瓣长度
iris1_len.resize((10,15)) #将长度生成二维数组
iris1_wid=np.array(list(len[3] for len in data['data'])) #遍历所有花瓣宽度
iris1_wid.resize((10,15)) #将宽度生成二维数组
iris1_len_wid=np.array(dict(length=iris1_len,width=iris1_wid)) #将花瓣长度和宽度生成一个字典
print("所有花瓣长宽:",iris1_len_wid)
print("第二朵花数据:",data['data'][1],data['target'][1]) #取出某朵花的四个特征及其类别。
iris_setosa=[] #定义三个新列表用于存放数据
iris_versicolor=[]
iris_virginica=[]
for i in range(0,150): #用for循环分类,并把target为0和1分别放入setosa类型和versicolor存放
if data['target'][i]==0:
data1=data['data'][i].tolist()
data1.append('setosa')
iris_setosa.append(data1)
elif data['target'][i]==1:
data1=data['data'][i].tolist()
data1.append('versicolor')
iris_versicolor.append(data1)
else:
data1=data['data'][i].tolist()
data1.append('virginica')
iris_virginica.append(data1)
data2=np.array([iris_setosa,iris_versicolor,iris_virginica]) #生成新的数组,每个元素包含四个特征+类别
print("结果:",data2)
![]()
![]()
![]()
![]()
![]()
![]()
![]()