#1.安装scipy,numpy,sklearn包 #2.从sklearn包自带的数据集中读出鸢尾花数据集data #3.查看data类型,包含哪些数据 import numpy from sklearn.datasets import load_iris data = load_iris() type(data) print(data.keys())
4、取出花的特性和类别数据,查看数据类型
data_tgs=data ['target']##鸢尾花特征 data_tgsname=data['target_names']##鸢尾花的类别数据 data_ts=data_tgsname,data_tgs#鸢尾花特征和鸢尾花的类别数据 print(data_ts)#形状 print(type(data_ts))#数据类型 #4.取出鸢尾花特征和鸢尾花类别数据,查看其形状及数据类型 #特征 iris_feature = data['data'] print(iris_feature) #类别数据 iris_target = data.target,data.target_names print('类型:',iris_target)
#取出所有花的花萼长度 sepal_len = numpy.array(list(len[0] for len in data['data'])) print('所有长度:',sepal_len)
# 6.取出所有花的花瓣长度(cm)+花瓣宽度(cm)的数据 #宽 iris_width=numpy.array(list(len[3] for len in data['data'])) print(iris_width) # 长 iris_length=numpy.array(list(len[2] for len in data['data'])) print(iris_length)
#8定义三个列表来存放不同类型花朵的类别 data_setosa=[] data_versicolor=[] data_virginica=[] len(data['data']) for i in range(0,150): if data['target'][i]==0: datas=data['data'][i].tolist() datas.append('setosa') print(data_setosa.append(datas)) elif data['target'][i]==1: datas=data['data'][i].tolist() datas.append('versicolor') data_versicolor.append(datas) else: data1=data['data'][i].tolist() data1.append('virginica') data_virginica.append(datas) Go_data=(numpy.array([data_setosa,data_versicolor,data_virginica])) print(Go_data)
#计算鸢尾花花瓣长度最大值 import numpy as np from sklearn.datasets import load_iris data = load_iris() petal_length=numpy.array(list(len[2]for len in data['data'])) print(np.max(petal_length)) print(np.mean(petal_length)) print(np.std(petal_length)) print(np.median(petal_length)) np.random.normal(1,5,60) np.random.randn(3,3) #正态分布图 import numpy as np import matplotlib.pyplot as plt mu = 1 sigma = 3 num = 10000 rand_data = np.random.normal(mu, sigma, num) print(rand_data.shape,type(rand_data)) count, bins, ignored=plt.hist(rand_data, 30, normed=True) plt.plot(bins, 1/(sigma * np.sqrt(2 * np.pi)) *np.exp( - (bins - mu)**2 / (2 * sigma**2)), linewidth=2, color='r') plt.show() #曲线图 plt.plot(np.linspace(0,150,num=150),petal_length,'r') plt.show() #散点图 import numpy as np import matplotlib.pyplot as plt plt.scatter(np.linspace(0,150,num=150),petal_length,alpha=0.5,marker='x') plt.show()