如何在建立 Pandas Series 後更改其索引值?
Pandas Series 建構函式會根據給定的資料自動建立 Series 索引標籤。如果要指定這些索引標籤,可以使用 Pandas Series 函式的 index 關鍵字引數單獨給出這些索引值。
如果 Python 字典是 Pandas Series 的資料,並且沒有指定任何索引標籤,則 Python 字典值的鍵將作為索引標籤。
也可以在建立 Pandas Series 物件後指定或更改其索引標籤。這可以透過使用 Pandas Series 建構函式的 index 屬性來完成。
示例
import pandas as pd
# create a series
s = pd.Series([1,2,3,4,6])
print(s)
# change the index
s.index = list('ABCDE')
print('
Series with new index')
print(s)解釋
pd 是匯入 Pandas 包時定義的 Pandas 包別名。之後,使用 Pandas Series 函式建立了一個簡單的 Pandas Series 物件,這裡的資料是一個整數列表。
並且沒有為我們的資料指定索引標籤,但是 Pandas Series 建構函式已經為我們的資料自動建立了一個索引標籤,這些標籤的值是從 0 到 4。
在這個示例中,我們使用 index 屬性將索引標籤從 0、1、2、3、4 更改為 A、B、C、D、E。
輸出
0 1 1 2 2 3 3 4 4 6 dtype: int64 Series with new index A 1 B 2 C 3 D 4 E 6 dtype: int64
上面的輸出塊中有兩個集合,一個塊是我們初始 Series 物件的輸出,帶有自動生成的索引標籤。第二個塊是更改索引標籤後的 Series 物件“s”的輸出。
在這裡,我們已將 Pandas Series 物件的索引標籤從整數值更改為物件資料型別。
示例
此示例將告訴您另一種在建立後更改 Pandas Series 物件索引標籤的方法。這裡我們使用了 Pandas Series 功能中的 Series.rename() 函式,它用於更改 Series 索引標籤或更改 Series 物件的名稱。
import pandas as pd
# create a series
s = pd.Series([1,2,3,4,6])
print(s)
# change the index
s = s.rename(lambda x: x**2)
print('
Series with new labels')
print(s)解釋
lambda 函式作為引數傳遞給 Series.rename 方法,此 Python lambda 函式將為我們的索引標籤生成平方值。
使用這些生成的平方值,Series.rename 方法將返回一個新的 Series 物件作為輸出,並且不會更新實際的 Series 物件“s”。這就是為什麼我們在這裡再次將結果物件重新賦值給 Series 物件“s”。
輸出
0 1 1 2 2 3 3 4 4 6 dtype: int64 Series with new labels 0 1 1 2 4 3 9 4 16 6 dtype: int64
第一個塊是初始 Series 物件的輸出,帶有預設索引標籤,第二個塊是帶有更新索引標籤的結果 Series 物件。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP