numpy统计分布显示
#计算鸢尾花花瓣长度的最大值,平均值,中值,均方差。 import numpy as np from sklearn.datasets import load_iris data=load_iris() iris=data.data petal_length=iris[:,2] #取所有行的第二列 print(np.mean(petal_length)) #平均值 print(np.std(petal_length)) #标准差 print(np.median(petal_length)) #中位数 print(np.max(petal_length)) print(np.min(petal_length))
#用np.random.normal()产生一个正态分布的随机数组,并显示出来。 print(np.random.normal(1,3,50))
#np.random.randn()产生一个正态分布的随机数组,并显示出来。 print(np.random.randn(3,3)) #3行3列正太分布随机数组 print(np.random.randn(50))
#显示鸢尾花花瓣长度的正态分布图 import matplotlib.pyplot as plt mu=np.mean(petal_length) #期望 sigma=np.std(petal_length) #标准差 num=1000 #个数为1000 rand_data=np.random.normal(mu,sigma,num) print(rand_data.shape) print(type(rand_data)) print(np.mean(petal_length),np.std(petal_length),np.median(petal_length)) 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()
#显示鸢尾花花瓣长度的曲线图 mu=np.mean(petal_length) #期望 sigma=np.std(petal_length) #标准差 print(np.mean(petal_length),np.std(petal_length),np.median(petal_length)) count,bins,ignored=plt.hist(rand_data,30,normed=True) plt.plot(np.linspace(0,150,num=150),petal_length,'r') plt.show()
#显示鸢尾花花瓣长度的散点图。 mu=np.mean(petal_length) #期望 sigma=np.std(petal_length) #标准差 print(np.mean(petal_length),np.std(petal_length),np.median(petal_length)) plt.scatter(np.linspace(0,150,num=150),petal_length,alpha=0.5,marker='D') plt.show()