第七次作业

 numpy统计分布显示

 

计算鸢尾花花瓣长度的最大值,平均值,中值,均方差。

 

用np.random.normal()产生一个正态分布的随机数组,并显示出来。

 

用np.random.randn()产生一个正态分布的随机数组,并显示出来。

 

显示鸢尾花花瓣长度的正态分布图,曲线图,散点图。

 

#计算鸢尾花花瓣长度的最大值,平均值,中值,均方差。
##获取鸢尾花的相关数据信息
import numpy as np
from sklearn.datasets import load_iris
data = load_iris()
print(data.keys())
print(data['feature_names'],data['data'])
##获取鸢尾花的花瓣长度
b = np.array(list(len[2] for len in data['data']))
print(b)
##计算花瓣长度的最大值
print('鸢尾花花瓣长度的最大值是:',np.max(b))
##计算花瓣长度的最小值
print('鸢尾花花瓣长度的最小值:',np.min(b))
##计算花瓣长度的平均值
print('鸢尾花花瓣长度的平均值是:',np.mean(b))
##计算花瓣长度的均方差
print('鸢尾花花瓣长度的均方差是:',np.std(b))
##计算花瓣长度的中值
print('鸢尾花花瓣长度的中值是:',np.median(b))

运行结果

# 用np.random.normal()产生一个正态分布的随机数组,并显示出来
print(np.random.normal(1,5,30))
# np.random.randn()产生一个正态分布的随机数组,并显示出来
print(np.random.randn(6,6)) 

运行结果

 

#显示鸢尾花花瓣长度的正态分布图

import numpy as np
import matplotlib.pyplot as plt

mu = 5  #期望为5
sigma = 27  #标准差为27
num = 10000  #个数为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()

运行结果

 

#显示鸢尾花花瓣长度的曲线图
import matplotlib.pyplot as plt
x=b
y=np.linspace(0,150)
plt.plot(np.linspace(0,150,num=150),b,"b")
plt.show()

运行结果

 

#显示鸢尾花花瓣长度的散点图
import matplotlib.pyplot as plt
x=b
y=np.linspace(0,150)
plt.scatter(np.linspace(0,150,num=150),b,alpha=0.5,marker="+")
plt.show()

运行结果

 

 

 

 

 

posted @ 2018-10-21 13:03  SuperLIi  阅读(113)  评论(0)    收藏  举报