【机器学习3】鸢尾花数据集可视化,让枯燥的数据颜值爆表!

简介: 【机器学习3】鸢尾花数据集可视化,让枯燥的数据颜值爆表!

鸢尾花

(梵高生命中的鸢尾花)

鸢尾花数据集?

Iris数据集是常用的分类实验数据集,由Fisher, 1936收集整理。Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集。

数据集包含150个数据样本,分为3类,每类50个数据,每个数据包含4个属性。可通过花萼长

长度花萼宽度花瓣长度花瓣宽度4个属性预测鸢尾花卉属于(SetosaVersicolourVirginica)三个种类中的哪一类。

机器学习基本概念——特征、标签

特征是输入变量,即简单线性回归中的变量,如鸢尾花数据集中的花萼长度、花萼宽度、花瓣长度、花瓣宽度,可以将这四个特征指定为

标签是我们要预测的事物,即简单线性回归中的变量,如鸢尾花数据集中的鸢尾花的种类。

所以本次我们要研究的鸢尾花数据集包含了四个特征,一个标签

导入鸢尾花数据库

我们看到的加粗的一列是索引列,表格中的第0列是Unnamed: 0这一列,我认为这一列对后续的研究没有什么太大帮助,所以我考虑删除这一列。

删除某一列:drop()方法:

#pandas 删除某一行/列
# 语法:DataFrame.drop(Labels=None,axis=0,index=None,columns=None,inplace=False)

参数说明:
labels 就是要删除的行列的名字,用列表给定
axis 默认为0,指删除行,因此删除列时要指定axis=1;
index 直接指定要删除的行
columns 直接指定要删除的列

inplace=False,默认该删除操作不改变原数据,而是返回一个执行删除操作后的新的dataframe;
inplace=True,则会直接在原数据上进行删除操作,删除后无法返回。

 

导入库Python可视化数据库matplotlib

导入 Python可视化库seaborn

seaborn是基于matplotlib的Python可视化库,将matplotlib库进行了进一步的封装,使用更加简单,而且绘制出的图表更加高大上。

使用DataFrame的属性和方法对鸢尾花数据集进行探索性分析

.后面带()的是方法,不带()的是属性

df.shape:150行 5列

df.describe()查看各列数据的统计特征

df.info()查看缺失值情况

可视化鸢尾花数据

 直方图:

这里绘制出的直方图只是特征列,因为标签列它是三元分类,是离散的而非连续的,(横坐标为厘米)花萼长度、花萼宽度、花瓣长度、花瓣宽度,可以直观的看出每一列的大致分布。

绘制四列特征各自的直方图:

 df.plot.area()可以直观的看出三类鸢尾花的花萼长度、花萼宽度、花瓣长度、花瓣跨宽度的大致大小。(由下面可以明显看出三种花的分层)

特征两两关系图

("hue":针对某一字段进行分类)因为我们主要探索的是各特征与鸢尾花种类的关系,所以我们选择鸢尾花种类这一标签列为"hue"

绘制KDE图

什么是KDE分布图呢?

KDE分布图,是指Kernel Density Estimation核概率密度估计。可以理解为是对直方图的加窗平滑。通过KDE分布图,可以查看并对训练数据集和测试数据集中特征变量的分布情况。

这个KDE图是单独看的四列特征列的各列的数据特征,绘制出来的。通过这个图,比如说橙色的花萼宽度,可以直观的看出它大致分布在0~5这样的一个区间且大部分位于2~4.对比直方图,核密度估计图能够更加全面的反应数据的一个分布特点。

计算特征两两之间的pearson相关系数

将pearson相关系数矩阵绘制热力图

绘制箱型图:

三种鸢尾花的花瓣长度的箱型图:

三种鸢尾花花瓣宽度箱型图:

三种鸢尾花花萼长度的箱型图:

三种鸢尾花花萼宽度的箱型图:

我们可以将以上四个图绘制在一张图表中:


小提琴图

小提琴图 (Violin Plot)是用来展示多组数据的分布状态以及概率密度,是优于箱线图的一种统计图形。他结合了箱线图与密度图,箱线图位于小提琴图内部,两侧是数据的密度图,能显示出数据的多个细节。

花萼长度:

花萼宽度:

花瓣长度:

花瓣宽度:

同样,我们可以将我们研究的这一类的四张图片放在一张上面:

每一个小提琴图中间的黑色的线就是箱型图中间的那条线,相比箱型图,小提琴图能够更加真实全面地反应数据的连续概率密度分布。

不同鸢尾花---花萼长度、花萼宽度、花瓣长度、花瓣宽度小提琴图

不同鸢尾花--花瓣长度 小提琴图

不同鸢尾花---花瓣宽度 小提琴图

不同鸢尾花---花萼长度小提琴图

不同鸢尾花  ----花萼宽度 小提琴图

当然,我们仍然可以将上面四个图放在一张图上 :(还是感觉上面的配色更好看一点)

平行坐标图

平行坐标图是可视化高维几何和分析多元数据的常用方法。看似高大上,但实际上就是简单粗暴地把不同特征的数据绘制成折线图。

3f84d62fa0d44fd297a6059441095e13.png

雷达图(径向坐标可视化):

RadViz雷达图(径向坐标可视化)是一种可视化多维数据的方式。

本质是将多维特征降维压缩到二维,每个数据压缩为一个点。它是基于基本的弹簧压力最小化算法。

33d1e3030a804df4868fa07c260bacce.png

安德鲁斯曲线

安德鲁斯曲线将每个样本的属性值转化为傅里叶序列的系数来绘制曲线。

它将四维空间映射为二维的一个曲线。每一根线都表示一根鸢尾花。


相关文章
|
29天前
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
96 4
|
18天前
|
机器学习/深度学习 人工智能 自然语言处理
模型训练数据-MinerU一款Pdf转Markdown软件
MinerU是由上海人工智能实验室OpenDataLab团队开发的开源智能数据提取工具,专长于复杂PDF文档的高效解析与提取。它能够将含有图片、公式、表格等多模态内容的PDF文档转化为Markdown格式,同时支持从网页和电子书中提取内容,显著提升了AI语料准备的效率。MinerU具备高精度的PDF模型解析工具链,能自动识别乱码,保留文档结构,并将公式转换为LaTeX格式,广泛适用于学术、财务、法律等领域。
110 4
|
1月前
|
机器学习/深度学习 数据采集 数据处理
谷歌提出视觉记忆方法,让大模型训练数据更灵活
谷歌研究人员提出了一种名为“视觉记忆”的方法,结合了深度神经网络的表示能力和数据库的灵活性。该方法将图像分类任务分为图像相似性和搜索两部分,支持灵活添加和删除数据、可解释的决策机制以及大规模数据处理能力。实验结果显示,该方法在多个数据集上取得了优异的性能,如在ImageNet上实现88.5%的top-1准确率。尽管有依赖预训练模型等限制,但视觉记忆为深度学习提供了新的思路。
34 2
|
1月前
|
机器学习/深度学习 算法 PyTorch
用Python实现简单机器学习模型:以鸢尾花数据集为例
用Python实现简单机器学习模型:以鸢尾花数据集为例
128 1
|
2月前
|
XML JSON 数据可视化
数据集学习笔记(二): 转换不同类型的数据集用于模型训练(XML、VOC、YOLO、COCO、JSON、PNG)
本文详细介绍了不同数据集格式之间的转换方法,包括YOLO、VOC、COCO、JSON、TXT和PNG等格式,以及如何可视化验证数据集。
332 1
数据集学习笔记(二): 转换不同类型的数据集用于模型训练(XML、VOC、YOLO、COCO、JSON、PNG)
|
2月前
|
机器学习/深度学习 存储 人工智能
揭秘机器学习背后的神秘力量:如何高效收集数据,让AI更懂你?
【10月更文挑战第12天】在数据驱动的时代,机器学习广泛应用,从智能推荐到自动驾驶。本文以电商平台个性化推荐系统为例,探讨数据收集方法,包括明确数据需求、选择数据来源、编写代码自动化收集、数据清洗与预处理及特征工程,最终完成数据的训练集和测试集划分,为模型训练奠定基础。
74 3
|
2月前
|
机器学习/深度学习 算法 Python
“探秘机器学习的幕后英雄:梯度下降——如何在数据的海洋中寻找那枚失落的钥匙?”
【10月更文挑战第11天】梯度下降是机器学习和深度学习中的核心优化算法,用于最小化损失函数,找到最优参数。通过计算损失函数的梯度,算法沿着负梯度方向更新参数,逐步逼近最小值。常见的变种包括批量梯度下降、随机梯度下降和小批量梯度下降,各有优缺点。示例代码展示了如何用Python和NumPy实现简单的线性回归模型训练。掌握梯度下降有助于深入理解模型优化机制。
40 2
|
3月前
|
机器学习/深度学习 数据采集 监控
探索机器学习:从数据到决策
【9月更文挑战第18天】在这篇文章中,我们将一起踏上一段激动人心的旅程,穿越机器学习的世界。我们将探讨如何通过收集和处理数据,利用算法的力量来预测未来的趋势,并做出更加明智的决策。无论你是初学者还是有经验的开发者,这篇文章都将为你提供新的视角和思考方式。
|
3月前
|
机器学习/深度学习 数据可视化 JavaScript
探索机器学习模型的可视化技术
【9月更文挑战第23天】在数据科学中,理解和解释机器学习模型的决策过程是至关重要的。本文将介绍几种流行的可视化工具和库,如TensorBoard、D3.js等,帮助读者更好地理解模型内部工作原理及其预测结果。通过实例演示如何使用这些工具进行模型可视化,增强模型的可解释性。
|
2月前
|
机器学习/深度学习 算法 数据处理
EM算法对人脸数据降维(机器学习作业06)
本文介绍了使用EM算法对人脸数据进行降维的机器学习作业。首先通过加载ORL人脸数据库,然后分别应用SVD_PCA、MLE_PCA及EM_PCA三种方法实现数据降维,并输出降维后的数据形状。此作业展示了不同PCA变种在人脸数据处理中的应用效果。
42 0