天天看點

使用 Pandas 進行資料可視化:綜合指南

作者:MikoAndCody

使用 Pandas 建立基本圖:線圖、散點圖、條形圖、直方圖、箱線圖和面積圖

介紹

資料可視化是資料和資訊的圖形表示。它是了解複雜資料和與他人交流見解的強大工具。資料可視化可用于多種目的,例如識别趨勢、模式和異常值,以及探索變量之間的關系。

Pandas 是一個流行的 Python 開源資料分析庫。它提供了強大的資料結構和資料分析工具,包括資料可視化功能。Pandas 可視化建立在 matplotlib 庫之上,該庫提供了廣泛的可自定義繪圖。

在本文中,我們将探索使用 pandas 進行資料可視化的基礎知識。 我們将從簡單的圖表開始,逐漸進行更複雜的可視化。 我們還将介紹建立有效可視化和自定義 pandas 圖的最佳實踐。

設定 Pandas 和資料

在我們開始使用 pandas 可視化資料之前,我們需要安裝 pandas 并将資料加載到 pandas DataFrame 中。

安裝 Pandas

如果您還沒有安裝 pandas,可以使用 Python 包管理器 pip。 打開終端或指令提示符并運作以下指令:

pip install pandas           

導入庫

安裝 pandas 後,您可以在 Python 腳本中導入它和其他必要的庫。

import pandas as pd           

加載資料

要将資料加載到 pandas DataFrame 中,我們可以使用 pd.read_csv() 函數。此函數讀取 CSV 檔案并建立 DataFrame 對象。

df = pd.read_csv('https://raw.githubusercontent.com/pycaret/pycaret/master/datasets/diamond.csv')
df.head()           
使用 Pandas 進行資料可視化:綜合指南
df.describe()           

這将為 DataFrame 中的每一列列印統計資訊,例如計數、平均值和标準差。這些函數對于在我們開始可視化之前快速了解我們的資料很有用。

使用 Pandas 進行資料可視化:綜合指南

使用 Pandas plot 方法進行可視化

Pandas 提供了幾種基本的可視化技術,使我們能夠快速可視化我們的資料。 在本節中,我們将介紹 pandas 中一些最常用的繪圖。

線圖

線圖是将資料顯示為由線連接配接的一系列點的圖形。我們可以使用 plot() 函數在 pandas 中建立一個線圖,并将 kind 參數設定為“line”:

# 導入 pandas 庫
import pandas as pd

# 使用 pandas 從 URL 讀取 migration.csv 資料
df = pd.read_csv('https://raw.githubusercontent.com/pycaret/pycaret/master/datasets/migration.csv')

# 轉置 DataFrame,使國家位于列中
df = df.transpose()

# 将列名設定為 DataFrame 第一行中的值
df.columns = df.iloc[0]

# 删除該行帶有列名
df = df.drop(index = 'Country Name')

# 将索引重命名為 'Year'
df = df.rename_axis('Year')

# 繪制加拿大的移民資料
df['Canada'].plot()           

輸出:

使用 Pandas 進行資料可視化:綜合指南

在這裡,我們在 DataFrame 中建立了 Canada 列與 Year 列的線圖。

散點圖

散點圖是将兩個變量之間的關系顯示為一系列點的圖形。我們可以使用 plot() 函數在 pandas 中建立一個散點圖,并将 kind 參數設定為“scatter”:

# 導入 pandas 庫
import pandas as pd

# 使用 pandas 從 URL 讀取 diamond.csv 資料
df = pd.read_csv('https://raw.githubusercontent.com/pycaret/pycaret/master/datasets/diamond.csv')

# 重量和價格的散點圖
df.plot(kind='scatter', x='Carat Weight', y='Price')
           

輸出:

使用 Pandas 進行資料可視化:綜合指南

在這裡,我們在 DataFrame 中建立了 Price 列與 Carat Weight 列的散點圖。

條形圖

條形圖是用矩形條顯示分類資料的圖表。 我們可以使用 kind 參數設定為 bar 的 plot 函數在 pandas 中建立條形圖:

# 導入 pandas 庫
import pandas as pd 

# 使用 pandas 從 URL 讀取 diamond.csv 資料
df = pd.read_csv('https://raw.githubusercontent.com/pycaret/pycaret/master/datasets/diamond.csv')

# 按切割類型繪制鑽石數量的條形圖

df['Cut'].value_counts().plot(kind = 'bar')
           

輸出:

使用 Pandas 進行資料可視化:綜合指南

在這裡,我們建立了一個按切工類型劃分的鑽石數量條形圖。

直方圖

直方圖是顯示數值變量分布的圖表。 我們可以使用 kind 參數設定為 hist 的 plot 函數在 pandas 中建立直方圖:

# 導入 pandas 庫
import pandas as pd 

# 使用 pandas 從 URL 讀取 diamond.csv 資料
df = pd.read_csv('https://raw.githubusercontent.com/pycaret/pycaret/master/datasets/diamond.csv')

# 價格直方圖
df['Price'].plot(kind = 'hist')
           

輸出:

使用 Pandas 進行資料可視化:綜合指南

在這裡,我們在 DataFrame 中建立價格列的直方圖。

箱線圖

箱線圖是顯示數值變量分布的圖形。 我們可以使用 kind 參數設定為 box 的 plot 函數在 pandas 中建立一個箱線圖:

# 導入 pandas 庫
import pandas as pd 

# 使用 pandas 從 URL 讀取 diamond.csv 資料
df = pd.read_csv('https://raw.githubusercontent.com/pycaret/pycaret/master/datasets/diamond.csv')

# 價格直方圖
df['Price'].plot(kind = 'box')
           

輸出:

使用 Pandas 進行資料可視化:綜合指南

面積圖

面積圖是顯示不同變量的數值随時間或任何其他次元的演變的圖表。 我們可以使用 kind 參數設定為 area 的 plot 函數在 pandas 中建立面積圖:

# 導入 pandas 庫
import pandas as pd 

# 使用 pandas 從 URL 讀取 migration.csv 資料
df = pd.read_csv('https://raw.githubusercontent.com/pycaret/pycaret/master/datasets/migration.csv')

# 轉置 DataFrame,使國家位于列中
df = df.transpose()

# 将列名設定為 DataFrame 第一行中的值
df.columns = df.iloc[0]

# 删除該行帶有列名
df = df.drop(index = 'Country Name')

# 将索引重命名為 'Year'
df = df.rename_axis('Year')

# 繪制加拿大和美國的移民資料
df[['Canada', 'United States']].plot(kind = 'area')
           

輸出:

使用 Pandas 進行資料可視化:綜合指南

結論

在本文中,我們學習了如何使用 pandas 建立各種類型的圖表和可視化來探索和分析資料。我們已經介紹了一些基本的可視化技術,例如線圖、散點圖、條形圖、直方圖、箱線圖和面積圖。

Pandas 提供了一種強大而靈活的方法,隻需幾行代碼即可建立可視化效果。借助 pandas,我們可以輕松地以可視化方式探索和分析我們的資料,并深入了解潛在的模式和趨勢。我們希望本文對使用 pandas 進行資料可視化對您有所幫助。

繼續閱讀