numpy统计分布显示
- 计算鸢尾花花瓣长度的最大值,平均值,中值,均方差。
from sklearn.datasets import load_iris import numpy as np iris = load_iris() print(iris) petal_length=np.array(list(len[2]for len in iris['data'])) np.max(petal_length) #花瓣长度最大值 np.min(petal_length) #花瓣长度最小值 np.std(petal_length) #花瓣长度数值的标准差 np.median(petal_length) #花瓣长度数值的中位数
运行结果:
- 用np.random.normal()产生一个正态分布的随机数组,并显示出来。
np.random.normal(loc=1,scale=10,size=100) #产生一个均值为1,标准差为10的正态分布的随机数组
运行结果:
- np.random.randn()产生一个正态分布的随机数组,并显示出来。
np.random.randn(3,3) #3行3列正态分布随机数组
运行结果:
- 显示鸢尾花花瓣长度的正态分布图。
import matplotlib.pyplot as plt mu = np.mean(petal_length) #花瓣长度期望值 sigma = np.std(petal_length) #花瓣长度标准差 num=150 rand_data= np.random.normal(mu,sigma,num) print(rand_data.shape,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='b') #花瓣长度正态分布图 plt.show()
- 显示鸢尾花花瓣长度的曲线图
mu = np.mean(petal_length) #花瓣长度期望值 sigma = np.std(petal_length) #花瓣长度标准差 num=150 rand_data= np.random.normal(mu,sigma,num) print(rand_data.shape,type(rand_data)) print(np.mean(petal_length),np.std(petal_length),np.median(petal_length)) plt.plot(np.linspace(0,150,num=150),petal_length,'b') #花瓣曲线图 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()