Chapter 10 大作业
本次练习使用 鸢尾属植物数据集.\iris.txt,在这个数据集中,包括了三类不同的鸢尾属植物:Iris Setosa,Iris Versicolour,Iris Virginica。每类收集了50个样本,因此这个数据集一共包含了150个样本。
sepallength:萼片长度
sepalwidth:萼片宽度
petallength:花瓣长度
petalwidth:花瓣宽度
以上四个特征的单位都是厘米(cm)。
# 导入鸢尾属植物数据集,保持文本不变。
import numpy as np
iris_data = np.loadtxt('./iris.txt', dtype=object, delimiter=',', skiprows=1)
print(iris_data)
[['5.1' '3.5' '1.4' '0.2' 'Iris-setosa']
['4.9' '3.0' '1.4' '0.2' 'Iris-setosa']
['4.7' '3.2' '1.3' '0.2' 'Iris-setosa']
['4.6' '3.1' '1.5' '0.2' 'Iris-setosa']
['5.0' '3.6' '1.4' '0.2' 'Iris-setosa']
['5.4' '3.9' '1.7' '0.4' 'Iris-setosa']
['4.6' '3.4' '1.4' '0.3' 'Iris-setosa']
['5.0' '3.4' '1.5' '0.2' 'Iris-setosa']
['4.4' '2.9' '1.4' '0.2' 'Iris-setosa']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['5.4' '3.7' '1.5' '0.2' 'Iris-setosa']
['4.8' '3.4' '1.6' '0.2' 'Iris-setosa']
['4.8' '3.0' '1.4' '0.1' 'Iris-setosa']
['4.3' '3.0' '1.1' '0.1' 'Iris-setosa']
['5.8' '4.0' '1.2' '0.2' 'Iris-setosa']
['5.7' '4.4' '1.5' '0.4' 'Iris-setosa']
['5.4' '3.9' '1.3' '0.4' 'Iris-setosa']
['5.1' '3.5' '1.4' '0.3' 'Iris-setosa']
['5.7' '3.8' '1.7' '0.3' 'Iris-setosa']
['5.1' '3.8' '1.5' '0.3' 'Iris-setosa']
['5.4' '3.4' '1.7' '0.2' 'Iris-setosa']
['5.1' '3.7' '1.5' '0.4' 'Iris-setosa']
['4.6' '3.6' '1.0' '0.2' 'Iris-setosa']
['5.1' '3.3' '1.7' '0.5' 'Iris-setosa']
['4.8' '3.4' '1.9' '0.2' 'Iris-setosa']
['5.0' '3.0' '1.6' '0.2' 'Iris-setosa']
['5.0' '3.4' '1.6' '0.4' 'Iris-setosa']
['5.2' '3.5' '1.5' '0.2' 'Iris-setosa']
['5.2' '3.4' '1.4' '0.2' 'Iris-setosa']
['4.7' '3.2' '1.6' '0.2' 'Iris-setosa']
['4.8' '3.1' '1.6' '0.2' 'Iris-setosa']
['5.4' '3.4' '1.5' '0.4' 'Iris-setosa']
['5.2' '4.1' '1.5' '0.1' 'Iris-setosa']
['5.5' '4.2' '1.4' '0.2' 'Iris-setosa']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['5.0' '3.2' '1.2' '0.2' 'Iris-setosa']
['5.5' '3.5' '1.3' '0.2' 'Iris-setosa']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['4.4' '3.0' '1.3' '0.2' 'Iris-setosa']
['5.1' '3.4' '1.5' '0.2' 'Iris-setosa']
['5.0' '3.5' '1.3' '0.3' 'Iris-setosa']
['4.5' '2.3' '1.3' '0.3' 'Iris-setosa']
['4.4' '3.2' '1.3' '0.2' 'Iris-setosa']
['5.0' '3.5' '1.6' '0.6' 'Iris-setosa']
['5.1' '3.8' '1.9' '0.4' 'Iris-setosa']
['4.8' '3.0' '1.4' '0.3' 'Iris-setosa']
['5.1' '3.8' '1.6' '0.2' 'Iris-setosa']
['4.6' '3.2' '1.4' '0.2' 'Iris-setosa']
['5.3' '3.7' '1.5' '0.2' 'Iris-setosa']
['5.0' '3.3' '1.4' '0.2' 'Iris-setosa']
['7.0' '3.2' '4.7' '1.4' 'Iris-versicolor']
['6.4' '3.2' '4.5' '1.5' 'Iris-versicolor']
['6.9' '3.1' '4.9' '1.5' 'Iris-versicolor']
['5.5' '2.3' '4.0' '1.3' 'Iris-versicolor']
['6.5' '2.8' '4.6' '1.5' 'Iris-versicolor']
['5.7' '2.8' '4.5' '1.3' 'Iris-versicolor']
['6.3' '3.3' '4.7' '1.6' 'Iris-versicolor']
['4.9' '2.4' '3.3' '1.0' 'Iris-versicolor']
['6.6' '2.9' '4.6' '1.3' 'Iris-versicolor']
['5.2' '2.7' '3.9' '1.4' 'Iris-versicolor']
['5.0' '2.0' '3.5' '1.0' 'Iris-versicolor']
['5.9' '3.0' '4.2' '1.5' 'Iris-versicolor']
['6.0' '2.2' '4.0' '1.0' 'Iris-versicolor']
['6.1' '2.9' '4.7' '1.4' 'Iris-versicolor']
['5.6' '2.9' '3.6' '1.3' 'Iris-versicolor']
['6.7' '3.1' '4.4' '1.4' 'Iris-versicolor']
['5.6' '3.0' '4.5' '1.5' 'Iris-versicolor']
['5.8' '2.7' '4.1' '1.0' 'Iris-versicolor']
['6.2' '2.2' '4.5' '1.5' 'Iris-versicolor']
['5.6' '2.5' '3.9' '1.1' 'Iris-versicolor']
['5.9' '3.2' '4.8' '1.8' 'Iris-versicolor']
['6.1' '2.8' '4.0' '1.3' 'Iris-versicolor']
['6.3' '2.5' '4.9' '1.5' 'Iris-versicolor']
['6.1' '2.8' '4.7' '1.2' 'Iris-versicolor']
['6.4' '2.9' '4.3' '1.3' 'Iris-versicolor']
['6.6' '3.0' '4.4' '1.4' 'Iris-versicolor']
['6.8' '2.8' '4.8' '1.4' 'Iris-versicolor']
['6.7' '3.0' '5.0' '1.7' 'Iris-versicolor']
['6.0' '2.9' '4.5' '1.5' 'Iris-versicolor']
['5.7' '2.6' '3.5' '1.0' 'Iris-versicolor']
['5.5' '2.4' '3.8' '1.1' 'Iris-versicolor']
['5.5' '2.4' '3.7' '1.0' 'Iris-versicolor']
['5.8' '2.7' '3.9' '1.2' 'Iris-versicolor']
['6.0' '2.7' '5.1' '1.6' 'Iris-versicolor']
['5.4' '3.0' '4.5' '1.5' 'Iris-versicolor']
['6.0' '3.4' '4.5' '1.6' 'Iris-versicolor']
['6.7' '3.1' '4.7' '1.5' 'Iris-versicolor']
['6.3' '2.3' '4.4' '1.3' 'Iris-versicolor']
['5.6' '3.0' '4.1' '1.3' 'Iris-versicolor']
['5.5' '2.5' '4.0' '1.3' 'Iris-versicolor']
['5.5' '2.6' '4.4' '1.2' 'Iris-versicolor']
['6.1' '3.0' '4.6' '1.4' 'Iris-versicolor']
['5.8' '2.6' '4.0' '1.2' 'Iris-versicolor']
['5.0' '2.3' '3.3' '1.0' 'Iris-versicolor']
['5.6' '2.7' '4.2' '1.3' 'Iris-versicolor']
['5.7' '3.0' '4.2' '1.2' 'Iris-versicolor']
['5.7' '2.9' '4.2' '1.3' 'Iris-versicolor']
['6.2' '2.9' '4.3' '1.3' 'Iris-versicolor']
['5.1' '2.5' '3.0' '1.1' 'Iris-versicolor']
['5.7' '2.8' '4.1' '1.3' 'Iris-versicolor']
['6.3' '3.3' '6.0' '2.5' 'Iris-virginica']
['5.8' '2.7' '5.1' '1.9' 'Iris-virginica']
['7.1' '3.0' '5.9' '2.1' 'Iris-virginica']
['6.3' '2.9' '5.6' '1.8' 'Iris-virginica']
['6.5' '3.0' '5.8' '2.2' 'Iris-virginica']
['7.6' '3.0' '6.6' '2.1' 'Iris-virginica']
['4.9' '2.5' '4.5' '1.7' 'Iris-virginica']
['7.3' '2.9' '6.3' '1.8' 'Iris-virginica']
['6.7' '2.5' '5.8' '1.8' 'Iris-virginica']
['7.2' '3.6' '6.1' '2.5' 'Iris-virginica']
['6.5' '3.2' '5.1' '2.0' 'Iris-virginica']
['6.4' '2.7' '5.3' '1.9' 'Iris-virginica']
['6.8' '3.0' '5.5' '2.1' 'Iris-virginica']
['5.7' '2.5' '5.0' '2.0' 'Iris-virginica']
['5.8' '2.8' '5.1' '2.4' 'Iris-virginica']
['6.4' '3.2' '5.3' '2.3' 'Iris-virginica']
['6.5' '3.0' '5.5' '1.8' 'Iris-virginica']
['7.7' '3.8' '6.7' '2.2' 'Iris-virginica']
['7.7' '2.6' '6.9' '2.3' 'Iris-virginica']
['6.0' '2.2' '5.0' '1.5' 'Iris-virginica']
['6.9' '3.2' '5.7' '2.3' 'Iris-virginica']
['5.6' '2.8' '4.9' '2.0' 'Iris-virginica']
['7.7' '2.8' '6.7' '2.0' 'Iris-virginica']
['6.3' '2.7' '4.9' '1.8' 'Iris-virginica']
['6.7' '3.3' '5.7' '2.1' 'Iris-virginica']
['7.2' '3.2' '6.0' '1.8' 'Iris-virginica']
['6.2' '2.8' '4.8' '1.8' 'Iris-virginica']
['6.1' '3.0' '4.9' '1.8' 'Iris-virginica']
['6.4' '2.8' '5.6' '2.1' 'Iris-virginica']
['7.2' '3.0' '5.8' '1.6' 'Iris-virginica']
['7.4' '2.8' '6.1' '1.9' 'Iris-virginica']
['7.9' '3.8' '6.4' '2.0' 'Iris-virginica']
['6.4' '2.8' '5.6' '2.2' 'Iris-virginica']
['6.3' '2.8' '5.1' '1.5' 'Iris-virginica']
['6.1' '2.6' '5.6' '1.4' 'Iris-virginica']
['7.7' '3.0' '6.1' '2.3' 'Iris-virginica']
['6.3' '3.4' '5.6' '2.4' 'Iris-virginica']
['6.4' '3.1' '5.5' '1.8' 'Iris-virginica']
['6.0' '3.0' '4.8' '1.8' 'Iris-virginica']
['6.9' '3.1' '5.4' '2.1' 'Iris-virginica']
['6.7' '3.1' '5.6' '2.4' 'Iris-virginica']
['6.9' '3.1' '5.1' '2.3' 'Iris-virginica']
['5.8' '2.7' '5.1' '1.9' 'Iris-virginica']
['6.8' '3.2' '5.9' '2.3' 'Iris-virginica']
['6.7' '3.3' '5.7' '2.5' 'Iris-virginica']
['6.7' '3.0' '5.2' '2.3' 'Iris-virginica']
['6.3' '2.5' '5.0' '1.9' 'Iris-virginica']
['6.5' '3.0' '5.2' '2.0' 'Iris-virginica']
['6.2' '3.4' '5.4' '2.3' 'Iris-virginica']
['5.9' '3.0' '5.1' '1.8' 'Iris-virginica']]
# 求出鸢尾属植物萼片长度的平均值、中位数和标准差(第1列,sepallength)
sepallength = np.loadtxt('./iris.txt', dtype=float, delimiter=',', skiprows=1, usecols=(0))
# 均值
print(np.mean(sepallength))
# 中位数
print(np.median(sepallength))
# 标准差
print(np.std(sepallength))
5.843333333333334
5.8
0.8253012917851409
# 创建一种标准化形式的鸢尾属植物萼片长度,其值正好介于0和1之间,
#这样最小值为0,最大值为1(第1列,sepallength)。
# 标准化, x-min /max - min
sepallength_norm = (sepallength-np.amin(sepallength))/np.ptp(sepallength)
print(sepallength_norm)
[0.22222222 0.16666667 0.11111111 0.08333333 0.19444444 0.30555556
0.08333333 0.19444444 0.02777778 0.16666667 0.30555556 0.13888889
0.13888889 0. 0.41666667 0.38888889 0.30555556 0.22222222
0.38888889 0.22222222 0.30555556 0.22222222 0.08333333 0.22222222
0.13888889 0.19444444 0.19444444 0.25 0.25 0.11111111
0.13888889 0.30555556 0.25 0.33333333 0.16666667 0.19444444
0.33333333 0.16666667 0.02777778 0.22222222 0.19444444 0.05555556
0.02777778 0.19444444 0.22222222 0.13888889 0.22222222 0.08333333
0.27777778 0.19444444 0.75 0.58333333 0.72222222 0.33333333
0.61111111 0.38888889 0.55555556 0.16666667 0.63888889 0.25
0.19444444 0.44444444 0.47222222 0.5 0.36111111 0.66666667
0.36111111 0.41666667 0.52777778 0.36111111 0.44444444 0.5
0.55555556 0.5 0.58333333 0.63888889 0.69444444 0.66666667
0.47222222 0.38888889 0.33333333 0.33333333 0.41666667 0.47222222
0.30555556 0.47222222 0.66666667 0.55555556 0.36111111 0.33333333
0.33333333 0.5 0.41666667 0.19444444 0.36111111 0.38888889
0.38888889 0.52777778 0.22222222 0.38888889 0.55555556 0.41666667
0.77777778 0.55555556 0.61111111 0.91666667 0.16666667 0.83333333
0.66666667 0.80555556 0.61111111 0.58333333 0.69444444 0.38888889
0.41666667 0.58333333 0.61111111 0.94444444 0.94444444 0.47222222
0.72222222 0.36111111 0.94444444 0.55555556 0.66666667 0.80555556
0.52777778 0.5 0.58333333 0.80555556 0.86111111 1.
0.58333333 0.55555556 0.5 0.94444444 0.55555556 0.58333333
0.47222222 0.72222222 0.66666667 0.72222222 0.41666667 0.69444444
0.66666667 0.66666667 0.55555556 0.61111111 0.52777778 0.44444444]
# 找到鸢尾属植物萼片长度的第5和第95百分位数(第1列,sepallength)。
np.percentile(sepallength, [5, 95])
array([4.6 , 7.255])
# 把iris_data数据集中的20个随机位置修改为np.nan值。
iris_data[np.random.choice(iris_data.shape[0], size=20), np.random.choice(iris_data.shape[1], size=20)] = np.nan
print(iris_data)
[['5.1' '3.5' '1.4' '0.2' 'Iris-setosa']
['4.9' '3.0' '1.4' '0.2' 'Iris-setosa']
['4.7' '3.2' '1.3' '0.2' 'Iris-setosa']
['4.6' '3.1' '1.5' '0.2' 'Iris-setosa']
['5.0' '3.6' '1.4' '0.2' 'Iris-setosa']
['5.4' '3.9' nan '0.4' 'Iris-setosa']
['4.6' '3.4' '1.4' '0.3' 'Iris-setosa']
['5.0' '3.4' '1.5' '0.2' 'Iris-setosa']
['4.4' '2.9' '1.4' '0.2' 'Iris-setosa']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['5.4' '3.7' '1.5' '0.2' 'Iris-setosa']
['4.8' '3.4' '1.6' '0.2' 'Iris-setosa']
['4.8' '3.0' nan '0.1' 'Iris-setosa']
['4.3' '3.0' '1.1' '0.1' 'Iris-setosa']
['5.8' '4.0' '1.2' '0.2' 'Iris-setosa']
['5.7' '4.4' '1.5' '0.4' 'Iris-setosa']
['5.4' '3.9' '1.3' '0.4' 'Iris-setosa']
['5.1' '3.5' '1.4' '0.3' 'Iris-setosa']
['5.7' '3.8' '1.7' '0.3' 'Iris-setosa']
[nan '3.8' '1.5' '0.3' 'Iris-setosa']
['5.4' '3.4' '1.7' '0.2' 'Iris-setosa']
['5.1' '3.7' '1.5' '0.4' 'Iris-setosa']
['4.6' '3.6' '1.0' '0.2' 'Iris-setosa']
['5.1' '3.3' '1.7' '0.5' 'Iris-setosa']
['4.8' '3.4' '1.9' '0.2' 'Iris-setosa']
['5.0' '3.0' '1.6' '0.2' 'Iris-setosa']
['5.0' '3.4' '1.6' '0.4' 'Iris-setosa']
['5.2' '3.5' '1.5' '0.2' nan]
['5.2' '3.4' nan '0.2' 'Iris-setosa']
['4.7' '3.2' '1.6' '0.2' 'Iris-setosa']
['4.8' '3.1' '1.6' '0.2' 'Iris-setosa']
['5.4' '3.4' '1.5' '0.4' nan]
['5.2' '4.1' '1.5' '0.1' 'Iris-setosa']
['5.5' '4.2' '1.4' '0.2' 'Iris-setosa']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['5.0' '3.2' '1.2' '0.2' 'Iris-setosa']
['5.5' '3.5' '1.3' '0.2' 'Iris-setosa']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['4.4' '3.0' '1.3' '0.2' 'Iris-setosa']
['5.1' '3.4' '1.5' '0.2' 'Iris-setosa']
['5.0' '3.5' '1.3' '0.3' 'Iris-setosa']
['4.5' '2.3' '1.3' '0.3' 'Iris-setosa']
['4.4' '3.2' '1.3' '0.2' 'Iris-setosa']
['5.0' '3.5' '1.6' '0.6' 'Iris-setosa']
['5.1' '3.8' '1.9' '0.4' 'Iris-setosa']
['4.8' '3.0' '1.4' '0.3' 'Iris-setosa']
[nan '3.8' '1.6' '0.2' 'Iris-setosa']
['4.6' '3.2' '1.4' '0.2' 'Iris-setosa']
['5.3' '3.7' '1.5' '0.2' 'Iris-setosa']
['5.0' '3.3' '1.4' '0.2' 'Iris-setosa']
['7.0' '3.2' '4.7' '1.4' 'Iris-versicolor']
['6.4' '3.2' '4.5' '1.5' 'Iris-versicolor']
['6.9' '3.1' '4.9' '1.5' 'Iris-versicolor']
['5.5' '2.3' '4.0' '1.3' 'Iris-versicolor']
['6.5' '2.8' '4.6' '1.5' 'Iris-versicolor']
['5.7' '2.8' '4.5' '1.3' 'Iris-versicolor']
['6.3' '3.3' '4.7' '1.6' 'Iris-versicolor']
['4.9' nan '3.3' '1.0' 'Iris-versicolor']
['6.6' nan '4.6' '1.3' 'Iris-versicolor']
['5.2' '2.7' '3.9' '1.4' 'Iris-versicolor']
['5.0' '2.0' '3.5' '1.0' 'Iris-versicolor']
['5.9' '3.0' '4.2' '1.5' 'Iris-versicolor']
['6.0' '2.2' nan '1.0' 'Iris-versicolor']
['6.1' '2.9' '4.7' '1.4' 'Iris-versicolor']
['5.6' '2.9' '3.6' '1.3' 'Iris-versicolor']
['6.7' '3.1' '4.4' '1.4' 'Iris-versicolor']
['5.6' '3.0' '4.5' '1.5' 'Iris-versicolor']
['5.8' '2.7' '4.1' '1.0' 'Iris-versicolor']
['6.2' '2.2' '4.5' '1.5' 'Iris-versicolor']
['5.6' '2.5' '3.9' '1.1' 'Iris-versicolor']
['5.9' '3.2' '4.8' '1.8' 'Iris-versicolor']
['6.1' '2.8' '4.0' '1.3' 'Iris-versicolor']
['6.3' '2.5' '4.9' '1.5' 'Iris-versicolor']
['6.1' '2.8' '4.7' '1.2' 'Iris-versicolor']
['6.4' '2.9' '4.3' '1.3' 'Iris-versicolor']
['6.6' '3.0' '4.4' '1.4' 'Iris-versicolor']
['6.8' '2.8' '4.8' '1.4' 'Iris-versicolor']
['6.7' '3.0' '5.0' '1.7' 'Iris-versicolor']
['6.0' '2.9' '4.5' '1.5' 'Iris-versicolor']
['5.7' '2.6' '3.5' '1.0' 'Iris-versicolor']
['5.5' '2.4' '3.8' '1.1' 'Iris-versicolor']
['5.5' '2.4' '3.7' '1.0' 'Iris-versicolor']
['5.8' '2.7' '3.9' '1.2' 'Iris-versicolor']
['6.0' '2.7' '5.1' '1.6' 'Iris-versicolor']
['5.4' '3.0' '4.5' nan 'Iris-versicolor']
['6.0' '3.4' '4.5' '1.6' 'Iris-versicolor']
['6.7' '3.1' '4.7' '1.5' 'Iris-versicolor']
['6.3' '2.3' '4.4' '1.3' 'Iris-versicolor']
['5.6' '3.0' '4.1' '1.3' 'Iris-versicolor']
[nan '2.5' '4.0' '1.3' 'Iris-versicolor']
['5.5' '2.6' '4.4' '1.2' 'Iris-versicolor']
['6.1' '3.0' '4.6' '1.4' 'Iris-versicolor']
['5.8' '2.6' '4.0' '1.2' 'Iris-versicolor']
['5.0' '2.3' '3.3' '1.0' 'Iris-versicolor']
['5.6' '2.7' '4.2' '1.3' 'Iris-versicolor']
['5.7' '3.0' '4.2' '1.2' 'Iris-versicolor']
['5.7' '2.9' '4.2' '1.3' 'Iris-versicolor']
['6.2' '2.9' '4.3' '1.3' 'Iris-versicolor']
['5.1' '2.5' '3.0' '1.1' 'Iris-versicolor']
['5.7' '2.8' '4.1' '1.3' 'Iris-versicolor']
['6.3' '3.3' '6.0' '2.5' 'Iris-virginica']
['5.8' '2.7' '5.1' '1.9' 'Iris-virginica']
['7.1' '3.0' '5.9' '2.1' 'Iris-virginica']
['6.3' '2.9' '5.6' '1.8' 'Iris-virginica']
['6.5' '3.0' '5.8' '2.2' 'Iris-virginica']
['7.6' '3.0' '6.6' '2.1' 'Iris-virginica']
['4.9' '2.5' '4.5' '1.7' 'Iris-virginica']
['7.3' '2.9' '6.3' '1.8' 'Iris-virginica']
['6.7' '2.5' '5.8' '1.8' 'Iris-virginica']
['7.2' '3.6' '6.1' '2.5' 'Iris-virginica']
['6.5' '3.2' '5.1' '2.0' 'Iris-virginica']
['6.4' '2.7' '5.3' '1.9' 'Iris-virginica']
['6.8' '3.0' '5.5' '2.1' 'Iris-virginica']
['5.7' '2.5' '5.0' '2.0' 'Iris-virginica']
['5.8' '2.8' '5.1' nan 'Iris-virginica']
['6.4' '3.2' '5.3' '2.3' 'Iris-virginica']
['6.5' '3.0' '5.5' '1.8' 'Iris-virginica']
['7.7' '3.8' '6.7' '2.2' 'Iris-virginica']
['7.7' '2.6' '6.9' '2.3' 'Iris-virginica']
['6.0' '2.2' '5.0' '1.5' 'Iris-virginica']
['6.9' '3.2' '5.7' '2.3' 'Iris-virginica']
['5.6' '2.8' nan '2.0' 'Iris-virginica']
['7.7' '2.8' nan '2.0' 'Iris-virginica']
['6.3' '2.7' '4.9' '1.8' 'Iris-virginica']
['6.7' '3.3' '5.7' '2.1' 'Iris-virginica']
['7.2' '3.2' '6.0' '1.8' 'Iris-virginica']
['6.2' '2.8' nan '1.8' 'Iris-virginica']
['6.1' '3.0' '4.9' '1.8' 'Iris-virginica']
['6.4' '2.8' '5.6' '2.1' 'Iris-virginica']
['7.2' '3.0' '5.8' '1.6' 'Iris-virginica']
[nan '2.8' '6.1' '1.9' 'Iris-virginica']
['7.9' '3.8' '6.4' '2.0' 'Iris-virginica']
['6.4' '2.8' '5.6' '2.2' 'Iris-virginica']
['6.3' '2.8' '5.1' '1.5' 'Iris-virginica']
['6.1' '2.6' '5.6' '1.4' 'Iris-virginica']
['7.7' '3.0' '6.1' '2.3' nan]
['6.3' '3.4' '5.6' '2.4' 'Iris-virginica']
['6.4' '3.1' '5.5' '1.8' 'Iris-virginica']
['6.0' '3.0' '4.8' '1.8' 'Iris-virginica']
['6.9' '3.1' nan '2.1' 'Iris-virginica']
['6.7' '3.1' '5.6' '2.4' 'Iris-virginica']
['6.9' '3.1' '5.1' '2.3' 'Iris-virginica']
['5.8' '2.7' '5.1' '1.9' 'Iris-virginica']
['6.8' '3.2' '5.9' '2.3' 'Iris-virginica']
['6.7' '3.3' '5.7' '2.5' 'Iris-virginica']
['6.7' '3.0' '5.2' '2.3' 'Iris-virginica']
['6.3' '2.5' '5.0' '1.9' 'Iris-virginica']
['6.5' '3.0' '5.2' '2.0' 'Iris-virginica']
['6.2' '3.4' '5.4' '2.3' 'Iris-virginica']
['5.9' '3.0' '5.1' '1.8' 'Iris-virginica']]
# 在iris_data的sepallength中查找缺失值的个数和位置(第1列)。
sepallength = np.array(iris_data[:, 0], dtype=np.float64)
print(sepallength)
# 缺失值的个数
print(np.sum(np.isnan(sepallength)))
# 缺失值的位置
print(np.where(np.isnan(sepallength)))
[5.1 4.9 4.7 4.6 5. 5.4 4.6 5. 4.4 4.9 5.4 4.8 4.8 4.3 5.8 5.7 5.4 5.1
5.7 nan 5.4 5.1 4.6 5.1 4.8 5. 5. 5.2 5.2 4.7 4.8 5.4 5.2 5.5 4.9 5.
5.5 4.9 4.4 5.1 5. 4.5 4.4 5. 5.1 4.8 nan 4.6 5.3 5. 7. 6.4 6.9 5.5
6.5 5.7 6.3 4.9 6.6 5.2 5. 5.9 6. 6.1 5.6 6.7 5.6 5.8 6.2 5.6 5.9 6.1
6.3 6.1 6.4 6.6 6.8 6.7 6. 5.7 5.5 5.5 5.8 6. 5.4 6. 6.7 6.3 5.6 nan
5.5 6.1 5.8 5. 5.6 5.7 5.7 6.2 5.1 5.7 6.3 5.8 7.1 6.3 6.5 7.6 4.9 7.3
6.7 7.2 6.5 6.4 6.8 5.7 5.8 6.4 6.5 7.7 7.7 6. 6.9 5.6 7.7 6.3 6.7 7.2
6.2 6.1 6.4 7.2 nan 7.9 6.4 6.3 6.1 7.7 6.3 6.4 6. 6.9 6.7 6.9 5.8 6.8
6.7 6.7 6.3 6.5 6.2 5.9]
4
(array([ 19, 46, 89, 130]),)
# 筛选具有 sepallength(第1列)< 5.0 并且 petallength(第3列)> 1.5 的 iris_data行。
iris_data = np.loadtxt("./iris.txt", dtype=float, delimiter=',', skiprows=1, usecols=(0,1,2,3))
rows_r = np.logical_and(iris_data[:, 0]<5.0, iris_data[:, 2]>1.5)
print(iris_data[np.where(rows_r)])
[[4.8 3.4 1.6 0.2]
[4.8 3.4 1.9 0.2]
[4.7 3.2 1.6 0.2]
[4.8 3.1 1.6 0.2]
[4.9 2.4 3.3 1. ]
[4.9 2.5 4.5 1.7]]
# 选择没有任何 nan 值的 iris_data行。
iris_data[np.random.choice(iris_data.shape[0], size=20), np.random.choice(iris_data.shape[1], size=20)] = np.nan
print(iris_data[np.sum(np.isnan(iris_data), axis=1)==0])
[[5.1 3.5 1.4 0.2]
[4.9 3. 1.4 0.2]
[4.7 3.2 1.3 0.2]
[4.6 3.1 1.5 0.2]
[5. 3.6 1.4 0.2]
[5.4 3.9 1.7 0.4]
[4.6 3.4 1.4 0.3]
[5. 3.4 1.5 0.2]
[4.4 2.9 1.4 0.2]
[4.9 3.1 1.5 0.1]
[5.4 3.7 1.5 0.2]
[4.3 3. 1.1 0.1]
[5.7 4.4 1.5 0.4]
[5.4 3.9 1.3 0.4]
[5.1 3.5 1.4 0.3]
[5.7 3.8 1.7 0.3]
[5.1 3.8 1.5 0.3]
[5.4 3.4 1.7 0.2]
[5.1 3.7 1.5 0.4]
[4.6 3.6 1. 0.2]
[4.8 3.4 1.9 0.2]
[5. 3. 1.6 0.2]
[5. 3.4 1.6 0.4]
[5.2 3.5 1.5 0.2]
[5.2 3.4 1.4 0.2]
[4.8 3.1 1.6 0.2]
[5.4 3.4 1.5 0.4]
[5.2 4.1 1.5 0.1]
[5.5 4.2 1.4 0.2]
[4.9 3.1 1.5 0.1]
[5. 3.2 1.2 0.2]
[4.9 3.1 1.5 0.1]
[4.4 3. 1.3 0.2]
[5.1 3.4 1.5 0.2]
[5. 3.5 1.3 0.3]
[4.5 2.3 1.3 0.3]
[4.4 3.2 1.3 0.2]
[5. 3.5 1.6 0.6]
[5.1 3.8 1.9 0.4]
[4.8 3. 1.4 0.3]
[5.1 3.8 1.6 0.2]
[4.6 3.2 1.4 0.2]
[5.3 3.7 1.5 0.2]
[5. 3.3 1.4 0.2]
[7. 3.2 4.7 1.4]
[6.4 3.2 4.5 1.5]
[6.9 3.1 4.9 1.5]
[6.5 2.8 4.6 1.5]
[5.7 2.8 4.5 1.3]
[4.9 2.4 3.3 1. ]
[6.6 2.9 4.6 1.3]
[5.2 2.7 3.9 1.4]
[5. 2. 3.5 1. ]
[5.9 3. 4.2 1.5]
[6. 2.2 4. 1. ]
[6.1 2.9 4.7 1.4]
[5.6 3. 4.5 1.5]
[6.2 2.2 4.5 1.5]
[5.6 2.5 3.9 1.1]
[5.9 3.2 4.8 1.8]
[6.1 2.8 4. 1.3]
[6.3 2.5 4.9 1.5]
[6.4 2.9 4.3 1.3]
[6.6 3. 4.4 1.4]
[6.8 2.8 4.8 1.4]
[6.7 3. 5. 1.7]
[6. 2.9 4.5 1.5]
[5.5 2.4 3.8 1.1]
[5.5 2.4 3.7 1. ]
[5.8 2.7 3.9 1.2]
[6. 2.7 5.1 1.6]
[5.4 3. 4.5 1.5]
[6.7 3.1 4.7 1.5]
[5.6 3. 4.1 1.3]
[5.5 2.5 4. 1.3]
[5.5 2.6 4.4 1.2]
[6.1 3. 4.6 1.4]
[5.8 2.6 4. 1.2]
[5. 2.3 3.3 1. ]
[5.6 2.7 4.2 1.3]
[5.7 3. 4.2 1.2]
[5.7 2.9 4.2 1.3]
[6.2 2.9 4.3 1.3]
[5.1 2.5 3. 1.1]
[5.7 2.8 4.1 1.3]
[6.3 3.3 6. 2.5]
[5.8 2.7 5.1 1.9]
[7.1 3. 5.9 2.1]
[6.3 2.9 5.6 1.8]
[6.5 3. 5.8 2.2]
[7.6 3. 6.6 2.1]
[4.9 2.5 4.5 1.7]
[7.3 2.9 6.3 1.8]
[6.7 2.5 5.8 1.8]
[7.2 3.6 6.1 2.5]
[6.5 3.2 5.1 2. ]
[6.8 3. 5.5 2.1]
[5.7 2.5 5. 2. ]
[5.8 2.8 5.1 2.4]
[6.4 3.2 5.3 2.3]
[6.5 3. 5.5 1.8]
[7.7 3.8 6.7 2.2]
[7.7 2.6 6.9 2.3]
[6. 2.2 5. 1.5]
[6.9 3.2 5.7 2.3]
[5.6 2.8 4.9 2. ]
[7.7 2.8 6.7 2. ]
[6.3 2.7 4.9 1.8]
[6.7 3.3 5.7 2.1]
[7.2 3.2 6. 1.8]
[6.1 3. 4.9 1.8]
[6.4 2.8 5.6 2.1]
[7.2 3. 5.8 1.6]
[7.4 2.8 6.1 1.9]
[7.9 3.8 6.4 2. ]
[6.4 2.8 5.6 2.2]
[6.3 2.8 5.1 1.5]
[6.1 2.6 5.6 1.4]
[7.7 3. 6.1 2.3]
[6.4 3.1 5.5 1.8]
[6. 3. 4.8 1.8]
[6.9 3.1 5.4 2.1]
[6.7 3.1 5.6 2.4]
[6.9 3.1 5.1 2.3]
[5.8 2.7 5.1 1.9]
[6.8 3.2 5.9 2.3]
[6.7 3.3 5.7 2.5]
[6.7 3. 5.2 2.3]
[6.3 2.5 5. 1.9]
[6.5 3. 5.2 2. ]
[6.2 3.4 5.4 2.3]
[5.9 3. 5.1 1.8]]
# 计算 iris_data 中sepalLength(第1列)和petalLength(第3列)之间的相关系数。
iris_data = np.loadtxt("./iris.txt", dtype=float, delimiter=',', skiprows=1, usecols=(0,1,2,3))
sepallength = iris_data[:, 0]
petallength = iris_data[:, 2]
print(np.corrcoef(sepallength, petallength))
[[1. 0.87175416]
[0.87175416 1. ]]
# 找出iris_data是否有任何缺失值。
print(np.any(np.isnan(iris_data)))
False
# 在numpy数组中将所有出现的nan替换为0。
iris_data[np.random.choice(iris_data.shape[0], size=20), np.random.choice(iris_data.shape[1], size=20)] = np.nan
iris_data[np.where(np.isnan(iris_data))] = 0
print(iris_data)
[[5.1 3.5 1.4 0.2]
[4.9 3. 1.4 0.2]
[4.7 3.2 1.3 0.2]
[4.6 3.1 1.5 0.2]
[5. 3.6 1.4 0.2]
[5.4 3.9 1.7 0.4]
[4.6 3.4 1.4 0.3]
[5. 3.4 1.5 0.2]
[4.4 2.9 1.4 0.2]
[4.9 3.1 1.5 0.1]
[5.4 3.7 1.5 0.2]
[4.8 3.4 1.6 0.2]
[4.8 3. 1.4 0.1]
[4.3 3. 1.1 0.1]
[5.8 4. 1.2 0.2]
[5.7 4.4 1.5 0.4]
[5.4 3.9 1.3 0.4]
[5.1 3.5 1.4 0.3]
[5.7 3.8 1.7 0.3]
[5.1 3.8 1.5 0.3]
[5.4 3.4 1.7 0.2]
[5.1 3.7 1.5 0.4]
[4.6 3.6 1. 0.2]
[5.1 3.3 1.7 0.5]
[4.8 3.4 1.9 0.2]
[5. 3. 1.6 0.2]
[5. 3.4 1.6 0.4]
[5.2 3.5 1.5 0.2]
[0. 3.4 1.4 0.2]
[4.7 3.2 0. 0.2]
[4.8 3.1 1.6 0.2]
[5.4 3.4 1.5 0.4]
[0. 4.1 1.5 0.1]
[5.5 4.2 1.4 0.2]
[4.9 3.1 1.5 0.1]
[5. 3.2 1.2 0.2]
[5.5 3.5 1.3 0.2]
[4.9 3.1 1.5 0.1]
[4.4 3. 1.3 0.2]
[5.1 3.4 1.5 0.2]
[5. 3.5 1.3 0.3]
[4.5 2.3 1.3 0.3]
[4.4 3.2 1.3 0.2]
[5. 3.5 1.6 0.6]
[5.1 3.8 1.9 0. ]
[4.8 3. 1.4 0.3]
[5.1 3.8 1.6 0.2]
[4.6 3.2 1.4 0.2]
[5.3 3.7 1.5 0.2]
[5. 3.3 1.4 0.2]
[7. 3.2 4.7 1.4]
[6.4 3.2 4.5 1.5]
[6.9 3.1 4.9 1.5]
[5.5 2.3 4. 1.3]
[6.5 0. 4.6 1.5]
[0. 0. 4.5 1.3]
[6.3 3.3 4.7 1.6]
[4.9 2.4 3.3 1. ]
[6.6 2.9 4.6 1.3]
[5.2 2.7 3.9 1.4]
[5. 2. 3.5 1. ]
[5.9 3. 4.2 1.5]
[6. 2.2 4. 1. ]
[6.1 2.9 4.7 1.4]
[5.6 2.9 0. 1.3]
[6.7 3.1 4.4 1.4]
[5.6 3. 4.5 1.5]
[5.8 2.7 4.1 1. ]
[6.2 2.2 4.5 1.5]
[5.6 2.5 3.9 1.1]
[5.9 3.2 4.8 1.8]
[6.1 2.8 4. 1.3]
[6.3 2.5 4.9 1.5]
[6.1 2.8 4.7 1.2]
[6.4 2.9 4.3 1.3]
[6.6 3. 4.4 1.4]
[6.8 2.8 4.8 1.4]
[6.7 3. 5. 1.7]
[6. 2.9 4.5 1.5]
[5.7 2.6 3.5 1. ]
[5.5 2.4 3.8 1.1]
[5.5 2.4 3.7 1. ]
[5.8 2.7 3.9 1.2]
[6. 2.7 5.1 1.6]
[5.4 3. 4.5 1.5]
[6. 3.4 4.5 1.6]
[6.7 0. 4.7 1.5]
[6.3 2.3 4.4 1.3]
[5.6 3. 4.1 1.3]
[5.5 2.5 4. 1.3]
[5.5 2.6 4.4 1.2]
[6.1 3. 4.6 1.4]
[5.8 2.6 4. 1.2]
[5. 2.3 3.3 1. ]
[5.6 2.7 4.2 1.3]
[5.7 3. 4.2 1.2]
[5.7 2.9 4.2 1.3]
[6.2 2.9 4.3 1.3]
[5.1 2.5 3. 1.1]
[5.7 2.8 4.1 1.3]
[6.3 3.3 6. 2.5]
[5.8 2.7 5.1 1.9]
[7.1 3. 5.9 2.1]
[6.3 0. 5.6 1.8]
[6.5 3. 5.8 2.2]
[7.6 3. 6.6 2.1]
[4.9 2.5 4.5 1.7]
[7.3 2.9 6.3 1.8]
[6.7 2.5 5.8 1.8]
[7.2 3.6 6.1 2.5]
[6.5 3.2 5.1 2. ]
[6.4 2.7 5.3 1.9]
[6.8 3. 5.5 2.1]
[5.7 2.5 5. 2. ]
[5.8 2.8 5.1 2.4]
[6.4 3.2 5.3 2.3]
[6.5 3. 0. 0. ]
[7.7 3.8 6.7 2.2]
[0. 2.6 6.9 2.3]
[6. 2.2 5. 1.5]
[6.9 3.2 5.7 2.3]
[5.6 2.8 4.9 2. ]
[0. 2.8 6.7 2. ]
[0. 2.7 4.9 1.8]
[6.7 3.3 5.7 2.1]
[7.2 3.2 6. 1.8]
[6.2 2.8 4.8 1.8]
[6.1 3. 4.9 1.8]
[6.4 2.8 5.6 2.1]
[7.2 3. 5.8 1.6]
[7.4 2.8 6.1 1.9]
[7.9 3.8 6.4 2. ]
[6.4 2.8 5.6 2.2]
[6.3 2.8 5.1 1.5]
[6.1 2.6 5.6 1.4]
[7.7 3. 6.1 2.3]
[6.3 3.4 5.6 2.4]
[6.4 3.1 5.5 1.8]
[6. 3. 4.8 0. ]
[6.9 3.1 5.4 2.1]
[6.7 3.1 5.6 2.4]
[6.9 3.1 0. 2.3]
[5.8 2.7 5.1 1.9]
[6.8 3.2 5.9 2.3]
[6.7 3.3 5.7 2.5]
[6.7 3. 5.2 2.3]
[6.3 2.5 5. 1.9]
[6.5 3. 0. 2. ]
[6.2 0. 0. 2.3]
[5.9 3. 5.1 1.8]]
# 找出鸢尾属植物物种中的唯一值和唯一值出现的数量。
species = np.loadtxt("iris.txt", dtype=object, delimiter=',', skiprows=1, usecols=(4))
print(np.unique(species, return_counts=True))
(array(['Iris-setosa', 'Iris-versicolor', 'Iris-virginica'], dtype=object), array([50, 50, 50]))
# 将 iris_data 的花瓣长度(第3列)以形成分类变量的形式显示。
#定义:Less than 3 --> 'small';3-5 --> 'medium';'>=5 --> 'large'。
petallength = np.loadtxt("./iris.txt", dtype=float, delimiter=',', skiprows=1, usecols=(2))
min = int(np.floor(np.amin(petallength)))
max = int(np.ceil(np.amax(petallength)))
bins = np.array([min, 3, 5, max])
inds = np.digitize(petallength, bins)
dic = {1:'small', 2:'medium', 3:'large'}
for i in inds:
print(dic[i])
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
small
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
large
medium
medium
medium
medium
medium
large
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
medium
large
large
large
large
large
large
medium
large
large
large
large
large
large
large
large
large
large
large
large
large
large
medium
large
medium
large
large
medium
medium
large
large
large
large
large
large
large
large
large
large
medium
large
large
large
large
large
large
large
large
large
large
large
在 iris_data 中创建一个新列,其中 volume 是
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L12jrCP5-1651800783347)(attachment:image.png)]
iris_data = np.loadtxt("./iris.txt", dtype=object, delimiter=',', skiprows=1)
petallength, sepallength = iris_data[:, 2].astype(float), iris_data[:, 0].astype(float)
volume = (np.pi*petallength*sepallength**2)/3
volume = volume[:, np.newaxis]
print(np.concatenate((iris_data, volume), axis=1))
[['5.1' '3.5' '1.4' '0.2' 'Iris-setosa' 38.13265162927291]
['4.9' '3.0' '1.4' '0.2' 'Iris-setosa' 35.200498485922445]
['4.7' '3.2' '1.3' '0.2' 'Iris-setosa' 30.0723720777127]
['4.6' '3.1' '1.5' '0.2' 'Iris-setosa' 33.238050274980004]
['5.0' '3.6' '1.4' '0.2' 'Iris-setosa' 36.65191429188092]
['5.4' '3.9' '1.7' '0.4' 'Iris-setosa' 51.911677007917746]
['4.6' '3.4' '1.4' '0.3' 'Iris-setosa' 31.022180256648003]
['5.0' '3.4' '1.5' '0.2' 'Iris-setosa' 39.269908169872416]
['4.4' '2.9' '1.4' '0.2' 'Iris-setosa' 28.38324242763259]
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa' 37.714819806345474]
['5.4' '3.7' '1.5' '0.2' 'Iris-setosa' 45.80442088933919]
['4.8' '3.4' '1.6' '0.2' 'Iris-setosa' 38.60389052731138]
['4.8' '3.0' '1.4' '0.1' 'Iris-setosa' 33.77840421139745]
['4.3' '3.0' '1.1' '0.1' 'Iris-setosa' 21.298950993787603]
['5.8' '4.0' '1.2' '0.2' 'Iris-setosa' 42.273270746704256]
['5.7' '4.4' '1.5' '0.4' 'Iris-setosa' 51.03517265756619]
['5.4' '3.9' '1.3' '0.4' 'Iris-setosa' 39.69716477076063]
['5.1' '3.5' '1.4' '0.3' 'Iris-setosa' 38.13265162927291]
['5.7' '3.8' '1.7' '0.3' 'Iris-setosa' 57.83986234524169]
['5.1' '3.8' '1.5' '0.3' 'Iris-setosa' 40.85641245993526]
['5.4' '3.4' '1.7' '0.2' 'Iris-setosa' 51.911677007917746]
['5.1' '3.7' '1.5' '0.4' 'Iris-setosa' 40.85641245993526]
['4.6' '3.6' '1.0' '0.2' 'Iris-setosa' 22.158700183320004]
['5.1' '3.3' '1.7' '0.5' 'Iris-setosa' 46.303934121259964]
['4.8' '3.4' '1.9' '0.2' 'Iris-setosa' 45.84212000118226]
['5.0' '3.0' '1.6' '0.2' 'Iris-setosa' 41.88790204786391]
['5.0' '3.4' '1.6' '0.4' 'Iris-setosa' 41.88790204786391]
['5.2' '3.5' '1.5' '0.2' 'Iris-setosa' 42.47433267653401]
['5.2' '3.4' '1.4' '0.2' 'Iris-setosa' 39.6427104980984]
['4.7' '3.2' '1.6' '0.2' 'Iris-setosa' 37.01215024949256]
['4.8' '3.1' '1.6' '0.2' 'Iris-setosa' 38.60389052731138]
['5.4' '3.4' '1.5' '0.4' 'Iris-setosa' 45.80442088933919]
['5.2' '4.1' '1.5' '0.1' 'Iris-setosa' 42.47433267653401]
['5.5' '4.2' '1.4' '0.2' 'Iris-setosa' 44.34881629317591]
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa' 37.714819806345474]
['5.0' '3.2' '1.2' '0.2' 'Iris-setosa' 31.415926535897928]
['5.5' '3.5' '1.3' '0.2' 'Iris-setosa' 41.18104370080621]
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa' 37.714819806345474]
['4.4' '3.0' '1.3' '0.2' 'Iris-setosa' 26.355867968515977]
['5.1' '3.4' '1.5' '0.2' 'Iris-setosa' 40.85641245993526]
['5.0' '3.5' '1.3' '0.3' 'Iris-setosa' 34.033920413889426]
['4.5' '2.3' '1.3' '0.3' 'Iris-setosa' 27.567475535250434]
['4.4' '3.2' '1.3' '0.2' 'Iris-setosa' 26.355867968515977]
['5.0' '3.5' '1.6' '0.6' 'Iris-setosa' 41.88790204786391]
['5.1' '3.8' '1.9' '0.4' 'Iris-setosa' 51.75145578258466]
['4.8' '3.0' '1.4' '0.3' 'Iris-setosa' 33.77840421139745]
['5.1' '3.8' '1.6' '0.2' 'Iris-setosa' 43.58017329059761]
['4.6' '3.2' '1.4' '0.2' 'Iris-setosa' 31.022180256648003]
['5.3' '3.7' '1.5' '0.2' 'Iris-setosa' 44.123668819668644]
['5.0' '3.3' '1.4' '0.2' 'Iris-setosa' 36.65191429188092]
['7.0' '3.2' '4.7' '1.4' 'Iris-versicolor' 241.16959604057647]
['6.4' '3.2' '4.5' '1.5' 'Iris-versicolor' 193.01945263655693]
['6.9' '3.1' '4.9' '1.5' 'Iris-versicolor' 244.29966952110314]
['5.5' '2.3' '4.0' '1.3' 'Iris-versicolor' 126.71090369478833]
['6.5' '2.8' '4.6' '1.5' 'Iris-versicolor' 203.52284407505874]
['5.7' '2.8' '4.5' '1.3' 'Iris-versicolor' 153.10551797269858]
['6.3' '3.3' '4.7' '1.6' 'Iris-versicolor' 195.34737279286693]
['4.9' '2.4' '3.3' '1.0' 'Iris-versicolor' 82.97260357396004]
['6.6' '2.9' '4.6' '1.3' 'Iris-versicolor' 209.8332565185694]
['5.2' '2.7' '3.9' '1.4' 'Iris-versicolor' 110.43326495898843]
['5.0' '2.0' '3.5' '1.0' 'Iris-versicolor' 91.62978572970229]
['5.9' '3.0' '4.2' '1.5' 'Iris-versicolor' 153.102376380045]
['6.0' '2.2' '4.0' '1.0' 'Iris-versicolor' 150.79644737231007]
['6.1' '2.9' '4.7' '1.4' 'Iris-versicolor' 183.14123813611934]
['5.6' '2.9' '3.6' '1.3' 'Iris-versicolor' 118.22441473989107]
['6.7' '3.1' '4.4' '1.4' 'Iris-versicolor' 206.83827152214724]
['5.6' '3.0' '4.5' '1.5' 'Iris-versicolor' 147.78051842486386]
['5.8' '2.7' '4.1' '1.0' 'Iris-versicolor' 144.43367505123953]
['6.2' '2.2' '4.5' '1.5' 'Iris-versicolor' 181.1442324059875]
['5.6' '2.5' '3.9' '1.1' 'Iris-versicolor' 128.07644930154868]
['5.9' '3.2' '4.8' '1.8' 'Iris-versicolor' 174.97414443433715]
['6.1' '2.8' '4.0' '1.3' 'Iris-versicolor' 155.86488352010159]
['6.3' '2.5' '4.9' '1.5' 'Iris-versicolor' 203.66002695426553]
['6.1' '2.8' '4.7' '1.2' 'Iris-versicolor' 183.14123813611934]
['6.4' '2.9' '4.3' '1.3' 'Iris-versicolor' 184.4408102971544]
['6.6' '3.0' '4.4' '1.4' 'Iris-versicolor' 200.71007145254472]
['6.8' '2.8' '4.8' '1.4' 'Iris-versicolor' 232.42759088318724]
['6.7' '3.0' '5.0' '1.7' 'Iris-versicolor' 235.04349036607638]
['6.0' '2.9' '4.5' '1.5' 'Iris-versicolor' 169.64600329384882]
['5.7' '2.6' '3.5' '1.0' 'Iris-versicolor' 119.08206953432112]
['5.5' '2.4' '3.8' '1.1' 'Iris-versicolor' 120.3753585100489]
['5.5' '2.4' '3.7' '1.0' 'Iris-versicolor' 117.2075859176792]
['5.8' '2.7' '3.9' '1.2' 'Iris-versicolor' 137.38812992678882]
['6.0' '2.7' '5.1' '1.6' 'Iris-versicolor' 192.26547039969532]
['5.4' '3.0' '4.5' '1.5' 'Iris-versicolor' 137.41326266801755]
['6.0' '3.4' '4.5' '1.6' 'Iris-versicolor' 169.64600329384882]
['6.7' '3.1' '4.7' '1.5' 'Iris-versicolor' 220.94088094411177]
['6.3' '2.3' '4.4' '1.3' 'Iris-versicolor' 182.87839155076904]
['5.6' '3.0' '4.1' '1.3' 'Iris-versicolor' 134.6444723426537]
['5.5' '2.5' '4.0' '1.3' 'Iris-versicolor' 126.71090369478833]
['5.5' '2.6' '4.4' '1.2' 'Iris-versicolor' 139.38199406426716]
['6.1' '3.0' '4.6' '1.4' 'Iris-versicolor' 179.2446160481168]
['5.8' '2.6' '4.0' '1.2' 'Iris-versicolor' 140.9109024890142]
['5.0' '2.3' '3.3' '1.0' 'Iris-versicolor' 86.3937979737193]
['5.6' '2.7' '4.2' '1.3' 'Iris-versicolor' 137.92848386320625]
['5.7' '3.0' '4.2' '1.2' 'Iris-versicolor' 142.89848344118533]
['5.7' '2.9' '4.2' '1.3' 'Iris-versicolor' 142.89848344118533]
['6.2' '2.9' '4.3' '1.3' 'Iris-versicolor' 173.09337763238804]
['5.1' '2.5' '3.0' '1.1' 'Iris-versicolor' 81.71282491987051]
['5.7' '2.8' '4.1' '1.3' 'Iris-versicolor' 139.49613859734757]
['6.3' '3.3' '6.0' '2.5' 'Iris-virginica' 249.37962484195774]
['5.8' '2.7' '5.1' '1.9' 'Iris-virginica' 179.66140067349306]
['7.1' '3.0' '5.9' '2.1' 'Iris-virginica' 311.4564484793409]
['6.3' '2.9' '5.6' '1.8' 'Iris-virginica' 232.7543165191606]
['6.5' '3.0' '5.8' '2.2' 'Iris-virginica' 256.61575992072625]
['7.6' '3.0' '6.6' '2.1' 'Iris-virginica' 399.20846167696214]
['4.9' '2.5' '4.5' '1.7' 'Iris-virginica' 113.14445941903642]
['7.3' '2.9' '6.3' '1.8' 'Iris-virginica' 351.57249227058014]
['6.7' '2.5' '5.8' '1.8' 'Iris-virginica' 272.65044882464855]
['7.2' '3.6' '6.1' '2.5' 'Iris-virginica' 331.1489984295929]
['6.5' '3.2' '5.1' '2.0' 'Iris-virginica' 225.64489234408688]
['6.4' '2.7' '5.3' '1.9' 'Iris-virginica' 227.33402199416705]
['6.8' '3.0' '5.5' '2.1' 'Iris-virginica' 266.3232812203187]
['5.7' '2.5' '5.0' '2.0' 'Iris-virginica' 170.1172421918873]
['5.8' '2.8' '5.1' '2.4' 'Iris-virginica' 179.66140067349306]
['6.4' '3.2' '5.3' '2.3' 'Iris-virginica' 227.33402199416705]
['6.5' '3.0' '5.5' '1.8' 'Iris-virginica' 243.34253095930936]
['7.7' '3.8' '6.7' '2.2' 'Iris-virginica' 415.99189682999014]
['7.7' '2.6' '6.9' '2.3' 'Iris-virginica' 428.4095653920794]
['6.0' '2.2' '5.0' '1.5' 'Iris-virginica' 188.4955592153876]
['6.9' '3.2' '5.7' '2.3' 'Iris-virginica' 284.1853298510792]
['5.6' '2.8' '4.9' '2.0' 'Iris-virginica' 160.91656450707399]
['7.7' '2.8' '6.7' '2.0' 'Iris-virginica' 415.99189682999014]
['6.3' '2.7' '4.9' '1.8' 'Iris-virginica' 203.66002695426553]
['6.7' '3.3' '5.7' '2.1' 'Iris-virginica' 267.94957901732704]
['7.2' '3.2' '6.0' '1.8' 'Iris-virginica' 325.7203263241898]
['6.2' '2.8' '4.8' '1.8' 'Iris-virginica' 193.22051456638667]
['6.1' '3.0' '4.9' '1.8' 'Iris-virginica' 190.93448231212446]
['6.4' '2.8' '5.6' '2.1' 'Iris-virginica' 240.20198550327083]
['7.2' '3.0' '5.8' '1.6' 'Iris-virginica' 314.86298211338345]
['7.4' '2.8' '6.1' '1.9' 'Iris-virginica' 349.8016812115067]
['7.9' '3.8' '6.4' '2.0' 'Iris-virginica' 418.27583468914986]
['6.4' '2.8' '5.6' '2.2' 'Iris-virginica' 240.20198550327083]
['6.3' '2.8' '5.1' '1.5' 'Iris-virginica' 211.97268111566407]
['6.1' '2.6' '5.6' '1.4' 'Iris-virginica' 218.2108369281422]
['7.7' '3.0' '6.1' '2.3' 'Iris-virginica' 378.73889114372236]
['6.3' '3.4' '5.6' '2.4' 'Iris-virginica' 232.7543165191606]
['6.4' '3.1' '5.5' '1.8' 'Iris-virginica' 235.91266433356955]
['6.0' '3.0' '4.8' '1.8' 'Iris-virginica' 180.95573684677208]
['6.9' '3.1' '5.4' '2.1' 'Iris-virginica' 269.22820722733815]
['6.7' '3.1' '5.6' '2.4' 'Iris-virginica' 263.24870921000553]
['6.9' '3.1' '5.1' '2.3' 'Iris-virginica' 254.27108460359707]
['5.8' '2.7' '5.1' '1.9' 'Iris-virginica' 179.66140067349306]
['6.8' '3.2' '5.9' '2.3' 'Iris-virginica' 285.692247127251]
['6.7' '3.3' '5.7' '2.5' 'Iris-virginica' 267.94957901732704]
['6.7' '3.0' '5.2' '2.3' 'Iris-virginica' 244.4452299807194]
['6.3' '2.5' '5.0' '1.9' 'Iris-virginica' 207.8163540349648]
['6.5' '3.0' '5.2' '2.0' 'Iris-virginica' 230.0693019978925]
['6.2' '3.4' '5.4' '2.3' 'Iris-virginica' 217.373078887185]
['5.9' '3.0' '5.1' '1.8' 'Iris-virginica' 185.9100284614832]]
# 随机抽鸢尾属植物的种类,使得Iris-setosa的数量是Iris-versicolor和Iris-virginica数量的两倍。
species = np.random.choice(['Iris‐setosa', 'Iris‐versicolor', 'Iris‐virginica'], size=100, p=[0.5, 0.25, 0.25])
print(np.unique(species, return_counts=True))
(array(['Iris‐setosa', 'Iris‐versicolor', 'Iris‐virginica'], dtype='<U15'), array([45, 25, 30]))
# 根据 sepallength 列对数据集进行排序。
iris_data = np.loadtxt("./iris.txt", dtype=object, delimiter=',', skiprows=1)
print(iris_data[np.argsort(iris_data[:, 0])])
[['4.3' '3.0' '1.1' '0.1' 'Iris-setosa']
['4.4' '3.2' '1.3' '0.2' 'Iris-setosa']
['4.4' '3.0' '1.3' '0.2' 'Iris-setosa']
['4.4' '2.9' '1.4' '0.2' 'Iris-setosa']
['4.5' '2.3' '1.3' '0.3' 'Iris-setosa']
['4.6' '3.6' '1.0' '0.2' 'Iris-setosa']
['4.6' '3.1' '1.5' '0.2' 'Iris-setosa']
['4.6' '3.4' '1.4' '0.3' 'Iris-setosa']
['4.6' '3.2' '1.4' '0.2' 'Iris-setosa']
['4.7' '3.2' '1.3' '0.2' 'Iris-setosa']
['4.7' '3.2' '1.6' '0.2' 'Iris-setosa']
['4.8' '3.0' '1.4' '0.1' 'Iris-setosa']
['4.8' '3.0' '1.4' '0.3' 'Iris-setosa']
['4.8' '3.4' '1.9' '0.2' 'Iris-setosa']
['4.8' '3.4' '1.6' '0.2' 'Iris-setosa']
['4.8' '3.1' '1.6' '0.2' 'Iris-setosa']
['4.9' '2.4' '3.3' '1.0' 'Iris-versicolor']
['4.9' '2.5' '4.5' '1.7' 'Iris-virginica']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['4.9' '3.1' '1.5' '0.1' 'Iris-setosa']
['4.9' '3.0' '1.4' '0.2' 'Iris-setosa']
['5.0' '3.5' '1.3' '0.3' 'Iris-setosa']
['5.0' '3.4' '1.6' '0.4' 'Iris-setosa']
['5.0' '3.3' '1.4' '0.2' 'Iris-setosa']
['5.0' '3.2' '1.2' '0.2' 'Iris-setosa']
['5.0' '3.5' '1.6' '0.6' 'Iris-setosa']
['5.0' '2.0' '3.5' '1.0' 'Iris-versicolor']
['5.0' '3.4' '1.5' '0.2' 'Iris-setosa']
['5.0' '2.3' '3.3' '1.0' 'Iris-versicolor']
['5.0' '3.6' '1.4' '0.2' 'Iris-setosa']
['5.0' '3.0' '1.6' '0.2' 'Iris-setosa']
['5.1' '3.8' '1.9' '0.4' 'Iris-setosa']
['5.1' '3.8' '1.6' '0.2' 'Iris-setosa']
['5.1' '2.5' '3.0' '1.1' 'Iris-versicolor']
['5.1' '3.5' '1.4' '0.2' 'Iris-setosa']
['5.1' '3.4' '1.5' '0.2' 'Iris-setosa']
['5.1' '3.5' '1.4' '0.3' 'Iris-setosa']
['5.1' '3.3' '1.7' '0.5' 'Iris-setosa']
['5.1' '3.7' '1.5' '0.4' 'Iris-setosa']
['5.1' '3.8' '1.5' '0.3' 'Iris-setosa']
['5.2' '4.1' '1.5' '0.1' 'Iris-setosa']
['5.2' '3.4' '1.4' '0.2' 'Iris-setosa']
['5.2' '3.5' '1.5' '0.2' 'Iris-setosa']
['5.2' '2.7' '3.9' '1.4' 'Iris-versicolor']
['5.3' '3.7' '1.5' '0.2' 'Iris-setosa']
['5.4' '3.0' '4.5' '1.5' 'Iris-versicolor']
['5.4' '3.9' '1.7' '0.4' 'Iris-setosa']
['5.4' '3.4' '1.7' '0.2' 'Iris-setosa']
['5.4' '3.4' '1.5' '0.4' 'Iris-setosa']
['5.4' '3.7' '1.5' '0.2' 'Iris-setosa']
['5.4' '3.9' '1.3' '0.4' 'Iris-setosa']
['5.5' '3.5' '1.3' '0.2' 'Iris-setosa']
['5.5' '2.6' '4.4' '1.2' 'Iris-versicolor']
['5.5' '4.2' '1.4' '0.2' 'Iris-setosa']
['5.5' '2.3' '4.0' '1.3' 'Iris-versicolor']
['5.5' '2.4' '3.7' '1.0' 'Iris-versicolor']
['5.5' '2.4' '3.8' '1.1' 'Iris-versicolor']
['5.5' '2.5' '4.0' '1.3' 'Iris-versicolor']
['5.6' '3.0' '4.1' '1.3' 'Iris-versicolor']
['5.6' '2.8' '4.9' '2.0' 'Iris-virginica']
['5.6' '3.0' '4.5' '1.5' 'Iris-versicolor']
['5.6' '2.5' '3.9' '1.1' 'Iris-versicolor']
['5.6' '2.7' '4.2' '1.3' 'Iris-versicolor']
['5.6' '2.9' '3.6' '1.3' 'Iris-versicolor']
['5.7' '2.6' '3.5' '1.0' 'Iris-versicolor']
['5.7' '2.9' '4.2' '1.3' 'Iris-versicolor']
['5.7' '2.8' '4.1' '1.3' 'Iris-versicolor']
['5.7' '4.4' '1.5' '0.4' 'Iris-setosa']
['5.7' '2.8' '4.5' '1.3' 'Iris-versicolor']
['5.7' '2.5' '5.0' '2.0' 'Iris-virginica']
['5.7' '3.8' '1.7' '0.3' 'Iris-setosa']
['5.7' '3.0' '4.2' '1.2' 'Iris-versicolor']
['5.8' '2.7' '4.1' '1.0' 'Iris-versicolor']
['5.8' '4.0' '1.2' '0.2' 'Iris-setosa']
['5.8' '2.6' '4.0' '1.2' 'Iris-versicolor']
['5.8' '2.8' '5.1' '2.4' 'Iris-virginica']
['5.8' '2.7' '5.1' '1.9' 'Iris-virginica']
['5.8' '2.7' '3.9' '1.2' 'Iris-versicolor']
['5.8' '2.7' '5.1' '1.9' 'Iris-virginica']
['5.9' '3.0' '5.1' '1.8' 'Iris-virginica']
['5.9' '3.0' '4.2' '1.5' 'Iris-versicolor']
['5.9' '3.2' '4.8' '1.8' 'Iris-versicolor']
['6.0' '2.9' '4.5' '1.5' 'Iris-versicolor']
['6.0' '2.7' '5.1' '1.6' 'Iris-versicolor']
['6.0' '3.0' '4.8' '1.8' 'Iris-virginica']
['6.0' '3.4' '4.5' '1.6' 'Iris-versicolor']
['6.0' '2.2' '4.0' '1.0' 'Iris-versicolor']
['6.0' '2.2' '5.0' '1.5' 'Iris-virginica']
['6.1' '3.0' '4.9' '1.8' 'Iris-virginica']
['6.1' '2.6' '5.6' '1.4' 'Iris-virginica']
['6.1' '2.8' '4.0' '1.3' 'Iris-versicolor']
['6.1' '2.9' '4.7' '1.4' 'Iris-versicolor']
['6.1' '2.8' '4.7' '1.2' 'Iris-versicolor']
['6.1' '3.0' '4.6' '1.4' 'Iris-versicolor']
['6.2' '2.2' '4.5' '1.5' 'Iris-versicolor']
['6.2' '2.9' '4.3' '1.3' 'Iris-versicolor']
['6.2' '3.4' '5.4' '2.3' 'Iris-virginica']
['6.2' '2.8' '4.8' '1.8' 'Iris-virginica']
['6.3' '2.5' '4.9' '1.5' 'Iris-versicolor']
['6.3' '2.7' '4.9' '1.8' 'Iris-virginica']
['6.3' '2.5' '5.0' '1.9' 'Iris-virginica']
['6.3' '3.3' '4.7' '1.6' 'Iris-versicolor']
['6.3' '2.8' '5.1' '1.5' 'Iris-virginica']
['6.3' '3.3' '6.0' '2.5' 'Iris-virginica']
['6.3' '2.3' '4.4' '1.3' 'Iris-versicolor']
['6.3' '3.4' '5.6' '2.4' 'Iris-virginica']
['6.3' '2.9' '5.6' '1.8' 'Iris-virginica']
['6.4' '2.8' '5.6' '2.2' 'Iris-virginica']
['6.4' '2.8' '5.6' '2.1' 'Iris-virginica']
['6.4' '3.1' '5.5' '1.8' 'Iris-virginica']
['6.4' '3.2' '4.5' '1.5' 'Iris-versicolor']
['6.4' '3.2' '5.3' '2.3' 'Iris-virginica']
['6.4' '2.9' '4.3' '1.3' 'Iris-versicolor']
['6.4' '2.7' '5.3' '1.9' 'Iris-virginica']
['6.5' '3.0' '5.8' '2.2' 'Iris-virginica']
['6.5' '3.0' '5.5' '1.8' 'Iris-virginica']
['6.5' '3.0' '5.2' '2.0' 'Iris-virginica']
['6.5' '2.8' '4.6' '1.5' 'Iris-versicolor']
['6.5' '3.2' '5.1' '2.0' 'Iris-virginica']
['6.6' '2.9' '4.6' '1.3' 'Iris-versicolor']
['6.6' '3.0' '4.4' '1.4' 'Iris-versicolor']
['6.7' '3.1' '4.7' '1.5' 'Iris-versicolor']
['6.7' '3.1' '5.6' '2.4' 'Iris-virginica']
['6.7' '2.5' '5.8' '1.8' 'Iris-virginica']
['6.7' '3.0' '5.0' '1.7' 'Iris-versicolor']
['6.7' '3.1' '4.4' '1.4' 'Iris-versicolor']
['6.7' '3.3' '5.7' '2.5' 'Iris-virginica']
['6.7' '3.0' '5.2' '2.3' 'Iris-virginica']
['6.7' '3.3' '5.7' '2.1' 'Iris-virginica']
['6.8' '3.2' '5.9' '2.3' 'Iris-virginica']
['6.8' '2.8' '4.8' '1.4' 'Iris-versicolor']
['6.8' '3.0' '5.5' '2.1' 'Iris-virginica']
['6.9' '3.1' '5.4' '2.1' 'Iris-virginica']
['6.9' '3.1' '5.1' '2.3' 'Iris-virginica']
['6.9' '3.1' '4.9' '1.5' 'Iris-versicolor']
['6.9' '3.2' '5.7' '2.3' 'Iris-virginica']
['7.0' '3.2' '4.7' '1.4' 'Iris-versicolor']
['7.1' '3.0' '5.9' '2.1' 'Iris-virginica']
['7.2' '3.0' '5.8' '1.6' 'Iris-virginica']
['7.2' '3.2' '6.0' '1.8' 'Iris-virginica']
['7.2' '3.6' '6.1' '2.5' 'Iris-virginica']
['7.3' '2.9' '6.3' '1.8' 'Iris-virginica']
['7.4' '2.8' '6.1' '1.9' 'Iris-virginica']
['7.6' '3.0' '6.6' '2.1' 'Iris-virginica']
['7.7' '2.8' '6.7' '2.0' 'Iris-virginica']
['7.7' '2.6' '6.9' '2.3' 'Iris-virginica']
['7.7' '3.8' '6.7' '2.2' 'Iris-virginica']
['7.7' '3.0' '6.1' '2.3' 'Iris-virginica']
['7.9' '3.8' '6.4' '2.0' 'Iris-virginica']]
# 在鸢尾属植物数据集中找到最常见的花瓣长度值(第3列)。
petallength = np.loadtxt("./iris.txt", dtype=float, delimiter=',', skiprows=1, usecols=(2))
elems, counts = np.unique(petallength,return_counts=True)
print(elems[np.argmax(counts)])
1.5
# 在鸢尾花数据集的 petalwidth(第4列)中查找第一次出现的值大于1.0的位置。
petalwidth = np.loadtxt("iris.txt", dtype=float, delimiter=',', skiprows=1, usecols=(3))
print(np.where(petalwidth>1.0)[0][0])
50