如何在 Pandas 中建立 Series 時指定索引?


Pandas Series 是帶標籤資料的1維 ndarray,這意味著 Series 中的每個值都有一個標籤表示,這也就是每個資料都有其索引值。

索引可以是標籤名稱(物件資料),也可以是值。預設情況下,它會從 0 到 n-1(n 是 Series 值的長度)分配索引值。並且它能夠定義索引值。

Pandas Series 函式有一個 index 關鍵字用於指定索引值,它接受任何型別資料的陣列作為輸入。資料可以是整數、浮點數、文字資料、日期時間等等。

讓我們看看如何在建立 Series 時指定索引值。

示例

import pandas as pd

Countries = ['Australia', 'Iceland', 'India', 'United Kingdom', 'United States']
Capitals = ['Canberra', 'Reykjavik', 'New Delhi', 'London', 'Washington D.C']

# create series
s = pd.Series(Capitals, index=Countries)

print(s)

解釋

上面程式碼的預期結果是一個帶有標籤索引和文字資料的 Pandas Series。這裡的索引值是一些國家的名稱列表,資料是這些國家對應的首都名稱。

我們建立了兩個 Python 列表來儲存國家名稱和首都名稱。並將這兩個列表傳送給 Pandas Series 建構函式 (pd.Series() 函式)。首都名稱是 Series 資料,國家名稱是索引。

可以透過將 Python 列表(countries 列表)賦值給 Pandas Series 函式的 index 關鍵字來實現指定索引名稱。這裡需要注意的是,索引資料的長度必須與 Series 資料的長度相同。否則,將會引發 ValueError。

輸出

Australia              Canberra
Iceland               Reykjavik
India                 New Delhi
United Kingdom           London
United States    Washington D.C
dtype: object

上面輸出塊中的索引和值都是物件資料型別。在上面的示例中,我們在建立 Series 時分別指定了索引標籤。

示例

# importing pandas packages
import pandas as pd

dictionary = {'a':'A','c':"C",'d':'D','e':'E'}

#creating a series with null data
s_obj = pd.Series(dictionary)

print(s_obj)

解釋

如果我們將 Python 字典作為資料傳遞給 Pandas Series 建構函式,那麼它將把字典的鍵作為索引,值作為 Series 物件的元素。

輸出

a   A
c   C
d   D
e   E
dtype: object

我們可以使用 Python 字典的鍵來指定 Series 物件的索引。

更新於:2021年11月17日

2K+ 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告