数据挖掘与算法 第七次作业

练习一: 计算鸢尾花花瓣长度的最大值,平均值,中值,均方差

代码:

import numpy as np

from sklearn.datasets import load_iris

data = load_iris()

##获取鸢尾花的花瓣长度

length=np.array(list(len[2] for len in data['data']))
print(length)

#计算花瓣长度的最大值
print('鸢尾花花瓣长度的最大值是:',np.max(length))

#计算花瓣长度的最小值
print('鸢尾花花瓣长度的最小值:',np.min(length))

#计算花瓣长度的平均值
print('鸢尾花花瓣长度的平均值是:',np.mean(length))

#计算花瓣长度的均方差
print('鸢尾花花瓣长度的均方差是:',np.std(length))

#计算花瓣长度的中值
print('鸢尾花花瓣长度的中值是:',np.median(length))

运行结果:

 

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

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

代码:

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

运行结果:

练习三:显示鸢尾花花瓣长度的正态分布图,曲线图,散点图

代码:

#正态分布图
import numpy as np
import matplotlib.pyplot as plt

mu = 7  #期望为5
sigma = 26  #标准差为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=length
y=np.linspace(0,150)
plt.plot(np.linspace(0,150,num=150),length,"b")
plt.show()

#散点图
import matplotlib.pyplot as plt
x=length
y=np.linspace(0,150)
plt.scatter(np.linspace(0,150,num=150),length,alpha=0.5,marker="+")
plt.show()

运行结果:

 

posted on 2018-10-22 21:59  Z诗M7642  阅读(203)  评论(0)    收藏  举报