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()

猜你喜欢

转载自www.cnblogs.com/zwlh/p/9809614.html