numpy统计分布显示
Posted 123-feng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy统计分布显示相关的知识,希望对你有一定的参考价值。
计算鸢尾花花瓣长度的最大值,平均值,中值,均方差。
用np.random.normal()产生一个正态分布的随机数组,并显示出来。
np.random.randn()产生一个正态分布的随机数组,并显示出来。
显示鸢尾花花瓣长度的正态分布图,曲线图,散点图。
代码:
import numpy as np from sklearn.datasets import load_iris import matplotlib.pyplot as plt #从sklearn包自带的数据集中读出鸢尾花数据集data data=load_iris() #计算鸢尾花花瓣长度的最大值,平均值,中值,均方差。 petal_data=data[‘data‘][:,2] #花瓣长度数据 petal_max=np.max(petal_data) #最大值 petal_mean=np.mean(petal_data) #平均值 petal_std=np.std(petal_data) #均方差 print("花瓣长度数据:",petal_data) print(‘最大值:‘,petal_max,‘平均值:‘,‘平均值:‘,petal_mean,‘均方差:‘,petal_std) #用np.random.normal()产生一个正态分布的随机数组,并显示出来。 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() #np.random.randn()产生一个正态分布的随机数组,并显示出来。 rand_data1=np.random.normal(mu,sigma,num) print(rand_data1.shape,type(rand_data)) count,bins,ignored=plt.hist(rand_data1,30,normed=True) plt.plot(bins, 1/(sigma * np.sqrt(2 * np.pi)) *np.exp( - (bins - mu)**2/ (2*sigma**2)), linewidth=2, color=‘g‘) plt.show() #显示鸢尾花花瓣长度的正态分布图,曲线图,散点图。 mu=petal_mean #正态分布图 sigma=petal_std num1=10000 rand_data=np.random.normal(mu,sigma,num1) 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=‘g‘) plt.show() #曲线图 plt.plot(np.linspace(0,150,150),petal_data,‘r‘) plt.show() #散点图 plt.scatter(np.linspace(0,150,150),petal_data) plt.show()
运行结果:
以上是关于numpy统计分布显示的主要内容,如果未能解决你的问题,请参考以下文章