Python 中的 Seaborn 函數可視化變量的分佈

Python 中的 Seaborn 函數可視化變量的分佈

在處理由多個變量組成的數據集時,最好能夠理解這些變量之間的差異和相互作用。在本教程中,我將演示如何在 Python 中使用 Seaborn 函數來可視化變量分佈的替代方案。您可以在本博客底部觀看本教程的完整視頻。

目錄

在 Python 中使用 Seaborn 函數

我將在 Seaborn 中提供的 MPG 數據集上演示這一點。所以,讓我們繼續導入我們需要的任何包以及我們需要的任何數據。我們將在此處查看 MPG 變量的分佈以及它們的變化方式。兩種常見的方法是直方圖箱線圖

Python 中的 Seaborn 函數可視化變量的分佈

所以我將使用displot函數(DIS 用於分發)。然後,我需要指定它是什麼數據集以及我們要放在 X 軸上的變量。這樣,我們就有了分佈。

這很好。這很容易看出整個分佈和形狀。不過,這種分佈可視化有幾個缺點。一是我們使用的 bin 數量可以說是任意的。另一件事是我們不一定能立即知道變量的均值是多少。

Python 中的 Seaborn 函數可視化變量的分佈

Seaborn 的好處在於,一旦我設置了我想要的變量、位置和我正在使用的數據集,它就可以即插即用地創建新的可視化。現在我們來看看箱線圖。箱線圖不使用箱。

這裡的想法是我們可以非常清楚地看到四分位值,特別是中位數,並且我們可以看到其他四分位值。我們看到有一個異常值,這是一個非常精確的圖。問題箱線圖是它對通常很多業務用戶可能不關心的事情很精確。

Python 中的 Seaborn 函數可視化變量的分佈

所以,這個情節對於非統計人員來說有點難以真正獲得很多價值。而且,它正在聚合數據,所以我們丟失了很多細節。很難確切地知道這看起來像什麼。我們可以看到有異常值。我們可以看到大部分值都在這裡。直方圖為我們提供了一種更直觀的方式來看待它。

這兩個都是很好的情節。他們都有自己的目的。讓我們看看使用 Seaborn 進行可視化的一些替代方案。我們將堅持使用 MPG 來分配該變量。

與箱線圖類似,你可以在這裡看到中位數被清楚地標記出來了。我們也看到了四分位數範圍,我們可以更好地了解整體分佈情況。這也有點像直方圖。它稱為核密度估計圖或 KDE 圖。它是直方圖的平滑版本。我們沒有使用任何任意分箱。這裡的一切都平滑到一個連續的範圍內。

Python 中的 Seaborn 函數可視化變量的分佈

這是這兩種方法的混合體,確實解決了一些缺點。但是,根據您的聽眾,他們可能真的很難看到這個。他們可能不習慣,但它確實比傳統方法有一些好處。

在這種方法中,我們不再聚合數據。每個單獨的點都被繪製出來。這需要散點圖的元素,對嗎?如果您考慮散點圖,我們會在 X 和 Y 坐標上繪製每個單獨的點。

Python 中的 Seaborn 函數可視化變量的分佈

最後,我們有stripplot。我們在這裡做的是採用該分佈,我們是隨機分散的。這是一個隨機過程。我們不再嘗試製作這種分佈形狀。這個問題是我們讓所有這些團塊相互碰撞,所以這可能不是很好,這取決於你想做什麼。也許你想按組或類似的方式給它們上色,所以有一個選項。

Python 中的 Seaborn 函數可視化變量的分佈

我們可以將抖動更改為 0.25,並看到隨著我們增加抖動,這些點分散得更多一些。

Python 中的 Seaborn 函數可視化變量的分佈

但是,每次我運行它們時,它們看起來都會略有不同。所以,如果你想擺脫它並讓它每次都一樣,你可以將 numpy 導入為 np。這就是所謂的設置隨機種子。

每次我運行與隨機數有關的東西時,它都會使用相同的隨機數。當您重新運行它時,事情不會隨機改變。這可能對您正在進行的任何類型的模擬都有好處,這種模擬在數據科學和分析中也經常發生這種可視化。所以現在,每次我運行這個圖時,我們都會得到相同的外觀。

Python 中的 Seaborn 函數可視化變量的分佈

我還可以在這裡添加 Y 原點,現在我們看到我們正在創建一個雙變量分佈。我們正在獲取里程分佈並按來源進行細分。

Python 中的 Seaborn 函數可視化變量的分佈


如何在 LuckyTemplates 中使用 Python 腳本
LuckyTemplates 數據報告中的 Python
腳本 Pandas 中的數據集與 ProfileReport() | LuckyTemplates 中的 Python

結論

這些是可視化一個變量分佈的替代方法。他們都有自己的優點和缺點。這並不是說永遠不要使用箱線圖或直方圖,而只是說,這裡有一些其他選項,具體取決於您要顯示的內容。

當我們在 Python 中使用 Seaborn 函數時,它們與其他任何一個一樣容易製作。如果您想了解更多關於Python的信息,請查看以下鏈接。

一切順利!


在 Power Automate 中執行直到循環控制

在 Power Automate 中執行直到循環控制

了解有關 Do Until 循環控制如何在 Power Automate 流中工作的基礎過程,並熟悉所需的變量。

使用 Deneb 為 LuckyTemplates 製作自定義視覺對象

使用 Deneb 為 LuckyTemplates 製作自定義視覺對象

受限於 LuckyTemplates 中提供的標準視覺效果?學習使用 Deneb 和 Vega-Lite 為 LuckyTemplates 創建自定義視覺對象,提升您的數據可視化能力。

在 Power Automate Desktop 中將日期添加到文件名

在 Power Automate Desktop 中將日期添加到文件名

在此博客中,您將了解如何使用 Power Automate Desktop 自動將日期添加到文件名的開頭或結尾。

Power Query:如何快速添加註釋

Power Query:如何快速添加註釋

找出幾種不同的方法在 Power Query 中添加註釋,這對於不喜歡記筆記的人非常有幫助。

Power Apps – SharePoint 集成指南

Power Apps – SharePoint 集成指南

在此博客中,您將了解 MS Power Apps 界面的基礎知識並了解 Power Apps-SharePoint 集成的過程。

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

如何在 R 中保存和加載 RDS 文件

如何在 R 中保存和加載 RDS 文件

您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。

回顧前 N 個工作日——DAX 編碼語言解決方案

回顧前 N 個工作日——DAX 編碼語言解決方案

在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。

LuckyTemplates 篩選上下文簡介

LuckyTemplates 篩選上下文簡介

在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。