【Python畫圖-馴化seaborn】一文搞懂seaborn中的箱線圖實踐技巧

【Python畫圖-馴化seaborn】一文搞懂seaborn中的箱線圖實踐技巧

?
本次修煉方法請往下查看
在這里插入圖片描述

🌈 歡迎蒞臨我的個人主頁 👈這里是我工作、學習、實踐 IT領域、真誠分享 踩坑集合,智慧小天地!
🎇 免費獲取相關內容文檔關注:微信公眾號,發送 pandas 即可獲取
🎇 相關內容視頻講解 B站

🎓 博主簡介:AI算法馴化師,混跡多個大廠搜索、推薦、廣告、數據分析、數據挖掘崗位 個人申請專利40+,熟練掌握機器、深度學習等各類應用算法原理和項目實戰經驗

🔧 技術專長: 在機器學習、搜索、廣告、推薦、CV、NLP、多模態、數據分析等算法相關領域有豐富的項目實戰經驗。已累計為求職、科研、學習等需求提供近千次有償|無償定制化服務,助力多位小伙伴在學習、求職、工作上少走彎路、提高效率,近一年好評率100%

📝 博客風采: 積極分享關于機器學習、深度學習、數據分析、NLP、PyTorch、Python、Linux、工作、項目總結相關的實用內容。

?
?
?
?
?
?
?
?
?
?
?
?
?
?
?

🌵文章目錄🌵

    • 🎯 1. 基本介紹
    • 💡 2. 原理介紹
    • 🔍 3. 畫圖實踐
      • 3.1 數據準備
      • 3.2 單維畫圖
      • 3.3 分組畫圖
    • 4 高階用法
    • 🔍 5. 注意事項
    • 🔍 6. 總結

下滑查看解決方法

?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?

??

🎯 1. 基本介紹

??箱線圖(Boxplot)是一種用于展示數據分布的統計圖表,它能夠提供數據的最小值、第一四分位數(Q1)、中位數(Q2)、第三四分位數(Q3)和最大值的摘要信息,并且可以直觀地識別出數據中的異常值。

💡 2. 原理介紹

??箱線圖的關鍵數值定義如下:

  • 最小值(Minimum):數據集中的最小非異常值。
    第一四分位數(Q1):數據集中25%位置的值,表示有25%的數據點小于或等于這個值。
    中位數(Q2,Median):數據集中50%位置的值,將數據集分為兩個相等的部分。
    第三四分位數(Q3):數據集中75%位置的值,表示有75%的數據點小于或等于這個值。
    最大值(Maximum):數據集中的最大非異常值。
    四分位距(Interquartile Range, IQR):Q3與Q1之間的差值,表示數據集中間50%的數值范圍。

🔍 3. 畫圖實踐

3.1 數據準備

?? 我們通過seaborn自帶的數據對其進行相關的畫圖,具體的導入數據代碼如下所示:

import seaborn as sns
import matplotlib.pyplot as plt# 使用Seaborn內置的tips數據集
tips = sns.load_dataset("tips")total_bill	tip	sex	smoker	day	time	size
0	16.99	1.01	Female	No	Sun	Dinner	2
1	10.34	1.66	Male	No	Sun	Dinner	3
2	21.01	3.50	Male	No	Sun	Dinner	3
3	23.68	3.31	Male	No	Sun	Dinner	2
4	24.59	3.61	Female	No	Sun	Dinner	4
...	...	...	...	...	...	...	...
239	29.03	5.92	Male	No	Sat	Dinner	3
240	27.18	2.00	Female	Yes	Sat	Dinner	2
241	22.67	2.00	Male	Yes	Sat	Dinner	2
242	17.82	1.75	Male	No	Sat	Dinner	2
243	18.78	3.00	Female	No	Thur	Dinner	2

3.2 單維畫圖

?? 在畫箱線圖時,我們取單個維度指定方向即可,具體的代碼如下所示:

ax = sns.boxplot(y=tips["total_bill"])

?? 具體的圖片如下所示:
在這里插入圖片描述

ax = sns.boxplot(x=tips["total_bill"])

在這里插入圖片描述

3.3 分組畫圖

?? 有時候我們需要對多個維度的分布進行對比分析,這個時候需要分組畫圖,具體的代碼如下所示:

# 分組繪制箱線圖,分組因子是day,在x軸不同位置繪制
ax = sns.boxplot(x="day", y="total_bill", data=tips)

在這里插入圖片描述

??有時候我們不僅要分組,同時對每個分組內某個特征維度進行對比分析,具體的代碼如下所示:

# 分組箱線圖,分子因子是smoker,不同的因子用不同顏色區分
ax = sns.boxplot(x="day", y="total_bill", hue="smoker",data=tips, palette="Set3")

在這里插入圖片描述

4 高階用法

?? 有時候我們不僅需要畫出數據的分布圖,但是還想知道具體的數據點的分布,這個時候我們可以結合分布散點圖來一起使用,具體的代碼如下所示:

# 箱線圖+有分布趨勢的散點圖
# 圖形組合也就是兩條繪圖語句一起運行就可以了,相當于圖形覆蓋了
ax = sns.boxplot(x="day", y="total_bill", data=tips)
ax = sns.swarmplot(x="day", y="total_bill", data=tips, color=".25")

在這里插入圖片描述

🔍 5. 注意事項

  • 箱線圖非常適合于比較不同組數據的分布情況。
  • 箱線圖中的異常值通常用點表示,位于箱形圖外的點表示這些值。
  • 箱線圖的四分位距(IQR)可以提供數據分布的穩定性和離散程度的信息。
  • 在繪制箱線圖時,考慮數據的規模和分布特性,選擇合適的軸尺度(如對數尺度)。

🔍 6. 總結

??Seaborn的箱線圖是一種強大的工具,用于快速理解數據的分布情況和識別異常值。通過本博客的代碼示例,我們學習了如何使用Seaborn繪制箱線圖,并展示了如何通過箱線圖探索不同類別數據的分布特征。希望這篇博客能夠幫助你更好地利用箱線圖進行數據探索和分析。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/38991.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/38991.shtml
英文地址,請注明出處:http://en.pswp.cn/web/38991.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2736 卡片重排

題目描述 Description 可可共有兩種卡片,一種卡片是數字0-9編號,一種卡片是字母A-Z編號,現在兩種卡片混在一起,可可想將它們歸類擺放,但是要求同類卡片中,它們相對位置不可以改變,原先在前的仍…

python把項目編譯成so文件

提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 文章目錄 前言一、使用步驟1.引入庫 總結 前言 提示 例如: 提示:以下是本篇文章正文內容,下面案例可供參考 一、使用步驟 1.引入庫 代…

C語言兩個較大數字相加

C語言兩個較大數字相加 思路分析 由于C語言中的基本數據類型(如int、long等)有固定的大小,無法直接處理非常大的數字(如數百位的數字)。因此,我們需要采用字符串或數組來表示大數字,并逐位進行…

1.4 ROS2集成開發環境搭建

1.4.1 安裝VSCode VSCode全稱Visual Studio Code,是微軟推出的一款輕量級代碼編輯器,免費、開源而且功能強大。它支持幾乎所有主流的程序語言的語法高亮、智能代碼補全、自定義熱鍵、括號匹配、代碼片段、代碼對比Diff、GIT 等特性,支持插件…

導入第三方包Could not find a package configuration file provided by “demo msgs“ with

報錯代碼 Could not find a package configuration file provided by "demo msgs" with any of the following names: demo msgsConfig.cmake demo msgs-config.cmake Add the installation prefix of "demo msgs" tO CMAKE PREFIX PATH or set "dem…

7.3數據庫第一次作業

安裝MySQL 1.打開安裝包 2.選擇自定義安裝(custom)并點擊下一步 3.自定義安裝路徑 4.點擊執行 5.執行成功 6.默認選項點擊下一步 7.選擇新的授權方式并點擊下一步 8.配置密碼 9.默認配置并點擊下一步 10.點擊執行(Execute) 11.執…

python中的文件

1.什么是文件? 硬盤上存儲的數據都是以文件的形式來組織的~ 文件是數據在硬盤上的存儲形式,不同的數據在硬盤上的存儲形式是不同的, 2.文件路徑 文件夾/目錄。 文件夾,再包含文件夾的情況,這就是一個嵌套的關系&…

2024-2025年本田維修電路圖線路圖接線圖資料更新

此次更新了2024-2025年本田車系電路圖資料,覆蓋市面上99%車型,包括維修手冊、電路圖、新車特征、車身鈑金維修數據、全車拆裝、扭力、發動機大修、發動機正時、保養、電路圖、針腳定義、模塊傳感器、保險絲盒圖解對照表位置等等! 汽修幫手汽…

Java中使用arima預測未來數據

看著已經存在的曲線圖數據,想預估下后面曲線圖的數據。 import java.util.Vector;public class AR {double[] stdoriginalData{};int p;ARMAMath armamathnew ARMAMath();/*** AR模型* param stdoriginalData* param p //p為MA模型階數*/public AR(double [] stdori…

你的硬盤知道的太多:你以為你的秘密真的被刪除了嗎?

某一天你收到了朋友發給你的一個秘密文件,在看完之后,為了不被別人發現,你決定將文件毀尸滅跡! 你選中文件名稱 / 右鍵 / 刪除,好了,文件已經消失了。但你是懂電腦的,知道文件此時還在回收站里面…

Ozon/Noon/Temu/TK Shop如何多店鋪經營免受關聯封號?

許多商家和個人都面臨著多店鋪經營免受關聯封號的挑戰。特別是在像Ozon、Noon、TEMU以及TikTok Shop等平臺上,如何有效管理多個店鋪并避免關聯封號成為關鍵問題。 一、多店鋪經營防關聯封號的重要性: 在多店鋪經營過程中,如果平臺檢測到多個…

海外虛擬卡開卡平臺有哪些?無限開卡,無其他限制

隨著時代的發展很多小伙伴都需要海外虛擬卡,海外虛擬卡開卡平臺我這里用的是Fomepay的,他們比較人性化,有客服,隨時可咨詢 對于消費者而言,虛擬卡號提供了隱私,因此廣告商更難以跟蹤和定位購買行為&#x…

PyQt5入門教程:從安裝到構建簡單應用

PyQt5入門教程:從安裝到構建簡單應用 簡介 PyQt5是一個功能強大的Python綁定庫,用于Qt應用程序框架。它允許我們使用Python語言快速開發跨平臺的桌面應用程序。本教程將引導你完成PyQt5的安裝、配置,并帶你創建一個簡單的圖形用戶界面&…

《python程序語言設計》2018版第5章第50題利用turtle編程顯示三角形圖案

2024.06.18 05.50.01version 首先我覺得還是應該現從簡單陣列來進行。非常簡單。順便回憶一下我3月份做的5.19題里那些淘氣的數列 代碼成功 #將i從10設計成12打印的畢竟好看 for i in range(1,12):#這這里給結尾的i2效果并不好看for j in range(1,i):print(j,end" "…

【深度學習】Transformer

李宏毅深度學習筆記 https://blog.csdn.net/Tink1995/article/details/105080033 https://blog.csdn.net/leonardotu/article/details/135726696 https://blog.csdn.net/u012856866/article/details/129790077 Transformer 是一個基于自注意力的序列到序列模型,與基…

軟件測試與質量保證 | 云班課選擇題庫

目錄 第1章課后習題 第2章課后習題 第3章課后習題 第4章課后習題 第5章課后習題 第6章課后習題 第7章課后習題 第8章課后習題 第9章課后習題 第10章課后習題 第11章課后習題 第12章課后習題 第13章 測試相關未分類習題 第1章課后習題 1. 與質量相關的概念包括 &a…

51單片機第26步_單片機工作在空閑模式

重點學習51單片機工作在空閑模式。 1、進入空閑模式的方法 通過將PCON寄存器中的IDLE置1,CPU就會進入空閑模式。在空閑模式中,程序停止執行,RAM中的數據仍然保持,晶振繼續工作,但與CPU斷開,定時器和串行口…

IPython調試秘籍:pdb調試器深度解析與實戰

🐞 IPython調試秘籍:pdb調試器深度解析與實戰 在Python編程中,調試是開發過程中不可或缺的一環。IPython,作為一個強大的交互式Python解釋器,內置了pdb調試器,使得代碼調試變得異常便捷。本文將深入探討如…

可充電紐扣電池ML2032充電電路設計

如圖,可充電紐扣電池ML2032充電電路設計。 圖中二極管是為了防止電流倒灌, 電阻分壓出3.66v,再減掉二極管壓降(約0.4v)得3.26V,加在電池正負極充電。 隨著電池電量的積累,充電電流逐步減小,極限…

什么樣的企業適合SD-WAN網絡專線?

SD-WAN(Software-Defined Wide Area Network,軟件定義廣域網)是一種網絡技術,它利用軟件定義的方式管理和控制廣域網(WAN),旨在提高網絡效率、降低成本并簡化網絡管理。以下是適合采用SD-WAN網絡…