跟着penguins案例学Seaborn之Pairplot

简介: 跟着penguins案例学Seaborn之Pairplot

本期,我们继续跟着penguins案例来学习Seaborn中的Pairplot。Seaborn的Pairplot函数是一个非常有用的工具,用于绘制数据集中所有数值型变量之间的关系。它会为每对变量生成一个散点图,并在对角线上绘制每个变量的单变量分布图(通常是直方图或核密度估计图)。pairplot 是探索数据集中变量间关系的快速方法,尤其适用于初步了解数据集的结构。一、penguins数据集Palmer Penguins 数据集是近年来在数据科学和机器学习领域受到关注的一个数据集,经常被用作iris鸢尾花数据集的一个替代品。数据集包含了对南极洲不同地区生活的企鹅种群的研究数据,主要用于数据探索和可视化,以及分类任务。

数据集中各列的具体含义为:

   英文字段名   中文                  描述
species 种类 Gentoo:巴布亚企鹅(也叫金图企鹅);Adelie:阿德利企鹅;Chinstrap:帽带企鹅
culmen_length_mm 喙长(毫米) 喙的长度(毫米)
culmen_depth_mm 喙深(毫米) 喙的深度(毫米)
flipper_length_mm 脚蹼长度(毫米) 脚蹼的长度(毫米)
body_mass_g 体重(克) 体重(克)
island 岛屿名称 梦想岛、托尔格森岛、比斯科岛
sex 性别 企鹅的性别

该下载数据集的链接为:

通过百度网盘分享的文件:penguins.csv

链接:https://pan.baidu.com/s/1ttlYRHDpUhtNTnsPBeYAAQ

提取码:6666


二、数据清洗看看数据集中数据缺失情况:

df.isnull().sum()

1b36305917bebb00f426f33de7bf88ec.png

有5列中数据存在缺失值,下面我们通过语句补充完善。

#补充缺失值df['bill_length_mm']=df['bill_length_mm'].fillna(df['bill_length_mm'].median())df['bill_depth_mm']=df['bill_depth_mm'].fillna(df['bill_depth_mm'].median())df['flipper_length_mm']=df['flipper_length_mm'].fillna(df['flipper_length_mm'].median())df['body_mass_g']=df['body_mass_g'].fillna(df['body_mass_g'].median())df['sex']=df['sex'].fillna('MALE')df.isnull().sum()

4acb1e17c729c149c356bffc561224ca.png

三、数据集的pairplot图

我们通过pairplot先看看整体数据集的情况。

#简单的Pairplotsns.pairplot(data=df, corner=True);

40f122c4edcd300be9bf5c8c0e7d9ddb.png

从图中,我们可以看出数据集中,所有特征之间存在正相关,同时,许多图表显示不同的数据集群表示了不同的物种。当然,如果我们用species来分类看,差异会更加明显(下图)。

# Pairplot with huessns.pairplot(data=df, hue='species');

ca5131bb5357d63fdce23e6b7eacfe1b.png

从pairplot图中可以看到,Gentoo(绿色区域的)的body_mass(体重)和 flipper_length(脚蹼长度)要高得多,而它的bill_depth(喙深度)比其他2个物种要小。

四、一些参数

pairplot 提供了多种自定义选项,例如:

  • hue 参数可以根据另一个分类变量对散点图进行着色。
  • palette 参数可以设置颜色方案。
  • diag_kind 参数可以改变对角线上的图表类型,比如使用 'hist'、'kde' 或 'reg'。
  • kind 参数可以设置非对角线上的图表类型,如'scatter'、'reg'、'resid'、'kde' 或 'hex'。


  • 比如,我们设置一下上图中的非对角线的图标类型为reg。
  • 20cdd96762b62b4546742d9f6d3c3db8.png
  • 是不是给每个scatter图都增加了几条回归线?~~
  • 五、总结

Seaborn中的pairplot是一个非常强大的工具,可以帮助你快速了解数据集中的变量间关系,尤其是它们的分布和相关性,识别变量之间的相关性或模式,例如:线性或非线性关系、聚类或异常值等。

当然,想要了解更多关于Pairplot的功能,请参考官方文档:

https://seaborn.pydata.org/generated/seaborn.pairplot.html

自己动手试试吧?

相关文章
|
5天前
|
数据采集 前端开发 NoSQL
Python编程异步爬虫实战案例
Python编程异步爬虫实战案例
15 2
|
5天前
|
数据采集 自然语言处理 API
Python反爬案例——验证码的识别
Python反爬案例——验证码的识别
14 2
|
6天前
|
iOS开发 MacOS Python
Python编程小案例—利用flask查询本机IP归属并输出网页图片
Python编程小案例—利用flask查询本机IP归属并输出网页图片
13 1
|
8天前
|
存储 大数据 Python
案例学Python:filter()函数的用法,高级!
`filter()`函数是Python中处理序列数据的强大工具,它允许我们高效地根据条件过滤元素。通过结合匿名函数、常规函数或直接利用Python的内置逻辑,`filter()`提供了灵活且高效的过滤机制,尤其在大数据处理和内存敏感的应用中展现出其价值。掌握 `filter()`的使用,不仅能提升代码的可读性和效率,还能更好地适应Python的函数式编程风格。
18 2
|
8天前
|
Python
Python编程案例:同一工作簿不同表单特定数据添加到工作簿的另一表单里
Python编程案例:同一工作簿不同表单特定数据添加到工作簿的另一表单里
11 1
|
2天前
|
存储 算法 API
Python学习五:函数、参数(必选、可选、可变)、变量、lambda表达式、内置函数总结、案例
这篇文章是关于Python函数、参数、变量、lambda表达式、内置函数的详细总结,包含了基础知识点和相关作业练习。
10 0
|
6天前
|
人工智能 API iOS开发
ChatGPT编程Python小案例(拿来就用)—解压zip压缩文
ChatGPT编程Python小案例(拿来就用)—解压zip压缩文
17 0
|
6天前
|
人工智能 小程序 Python
Python编程小案例——编一个事件提醒弹窗小程序
Python编程小案例——编一个事件提醒弹窗小程序
10 0
|
8天前
|
IDE 开发工具 iOS开发
Python编程案例:招生档案按省份地区归档
Python编程案例:招生档案按省份地区归档
10 0
|
8天前
|
IDE 开发工具 iOS开发
Python编程案例:中文金额转换并计算
Python编程案例:中文金额转换并计算
13 0