1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > [机器学习-sklearn]鸢尾花Iris数据集

[机器学习-sklearn]鸢尾花Iris数据集

时间:2022-03-18 15:40:46

相关推荐

[机器学习-sklearn]鸢尾花Iris数据集

鸢尾花数据集

1. 鸢尾花Iris数据集介绍2. Sklearn代码获取Iris2. 描述性统计3. 箱线图4. 数据分布情况

1. 鸢尾花Iris数据集介绍

Iris flower数据集是1936年由Sir Ronald Fisher引入的经典多维数据集,可以作为判别分析(discriminant analysis)的样本。

该数据集包含Iris花的三个品种(Iris setosa, Iris virginica and Iris versicolor)各50个样本,

每个样本还有4个特征参数(分别是萼片的长宽和花瓣的长宽,以厘米为单位)

sepal length (cm), sepal width (cm), petal length (cm), petal width (cm)

,Fisher利用这个数据集开发了一个线性判别模型来辨别花朵的品种。

基于Fisher的线性判别模型,该数据集成为了机器学习中各种分类技术的典型实验案例

2. Sklearn代码获取Iris

from sklearn import datasetsiris = datasets.load_iris()irisFeatures = iris["data"]irisFeaturesName = iris["feature_names"]irisLabels = iris["target"]print('Iris feature name:',irisFeaturesName)print('Iris data size :',irisFeatures.shape)print(irisFeatures[:10])print('Iris label size :', irisLabels.shape)print(irisLabels[:10])

Iris feature name: ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']Iris data size : (150, 4)[[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]]Iris label size : (150,)[0 0 0 0 0 0 0 0 0 0]

2. 描述性统计

import pandas as pdprint(irisFeaturesName)dataset = pd.DataFrame(irisFeatures, columns=['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)'])print(dataset.describe())

(sepal length)花萼长度最小值4.30, 最大值7.90, 均值5.84, 中位数5.80, 右偏

(sepal width)花萼宽度最小值2.00, 最大值4.40, 均值3.05, 中位数3.00, 右偏

(petal length)花瓣长度最小值1.00, 最大值6.90, 均值3.76, 中位数4.35, 左偏

(petal width)花瓣宽度最小值0.10, 最大值2.50, 均值1.20, 中位数1.30, 左偏

按中位数来度量: 花萼长度 > 花瓣长度 > 花萼宽度 > 花瓣宽度

sepal length (cm) sepal width (cm) petal length (cm) petal width (cm)count 150.000000 150.000000 150.000000 150.000000mean 5.8433333.057333 3.7580001.199333std 0.8280660.435866 1.7652980.762238min 4.3000002.000000 1.0000000.10000025% 5.1000002.800000 1.6000000.30000050% 5.8000003.000000 4.3500001.30000075% 6.4000003.300000 5.1000001.800000max 7.9000004.400000 6.9000002.500000

3. 箱线图

boxplot所绘制的就是箱线图, 它能显示出一组数据的最大值, 最小值, 四分位数以及异常点.

对于异常点的定义: 区间[Q1-1.5IQR, Q3+1.5IQR]之外的点, 其中Q1下四分位数(25%), Q3上四分位数(75%), IQR=Q3-Q1

url = r"C:\Users\harry\PycharmProjects\helloworld\ML\DataSets_test\data\iris.csv"names = ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)', 'class']dataset = pd.read_csv(url, names=names)print(dataset.describe())dataset.plot.box()plt.show()

4. 数据分布情况

import matplotlib.pyplot as plts = dataset.hist() # 数据直方图histogramsprint(s)plt.show()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。