Python Pandas - Series



在 Python Pandas 庫中,Series 是主要資料結構之一,它提供了一種方便的方法來處理和操作一維資料。它類似於電子表格中的列或資料庫表中的單個列。在本教程中,您將瞭解有關 Pandas Series 的更多資訊,並有效地使用 Series 進行資料操作和分析。

什麼是 Series?

Pandas 中的 Series 是一個一維帶標籤的陣列,能夠儲存任何型別的資料,包括整數、浮點數、字串和 Python 物件。它由兩個主要組成部分組成:

  • 資料:儲存在 Series 中的實際值。
  • 索引:與每個資料值對應的標籤或索引。

Series 類似於一維 ndarray(NumPy 陣列),但帶有標籤,也稱為索引。這些標籤可用於訪問 Series 中的資料。預設情況下,索引值是從 0 開始到 Series 長度減一的整數,但您也可以手動設定索引標籤。

建立 Pandas Series

可以使用以下建構函式建立 Pandas Series:

class pandas.Series(data, index, dtype, name, copy)

建構函式的引數如下:

序號 引數及描述
1

data

資料採用多種形式,如 ndarray、列表或常量。

2

index

索引值必須唯一且可雜湊,與資料的長度相同。如果未傳遞索引,則預設為 np.arange(n)

3

dtype

資料型別。如果為 None,則將推斷資料型別。

4

copy

複製資料。預設為 False。

可以使用各種輸入建立 Series 物件,例如:

  • 列表
  • ndarray
  • 字典
  • 標量值或常量

建立空 Series

如果未向 Series 建構函式 pandas.Series() 提供任何資料,它將建立一個基本的空 Series 物件。

示例

以下示例演示瞭如何建立空 Series。

#import the pandas library and aliasing as pd
import pandas as pd
s = pd.Series()

# Display the result
print('Resultant Empty Series:\n',s)

輸出如下:

Resultant Empty Series: 
Series([], dtype: object)

從 ndarray 建立 Series

ndarray作為輸入資料傳遞給 Series 建構函式,然後它將使用該資料建立 Series。如果要指定自定義索引,則傳遞的索引必須與輸入資料的長度相同。如果未指定索引,則 Pandas 將自動從起始 0 生成預設索引到輸入資料的長度,即 [0,1,2,3…. range(len(array))-1]。

示例

以下是使用ndarray建立 Pandas Series 的示例。

#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
data = np.array(['a','b','c','d'])
s = pd.Series(data)
print(s)

輸出如下:

0   a
1   b
2   c
3   d
dtype: object

我們沒有傳遞任何索引,因此預設情況下,它分配了從 0 到len(data)-1的索引,即 0 到 3。

示例

此示例演示了在建立時將自定義索引應用於 Series 物件。

#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
data = np.array(['a','b','c','d'])
s = pd.Series(data,index=[100,101,102,103])
print("Output:\n",s)

輸出如下:

Output:
100  a
101  b
102  c
103  d
dtype: object

在此示例中,我們提供了索引值。現在我們可以看到輸出中自定義的索引值。

從 Python 字典建立 Series

可以將字典作為輸入傳遞給pd.Series()建構函式以使用字典值建立 Series。如果未指定索引,則字典鍵將按排序順序獲取以構建 Series 索引。如果傳遞了index,則將提取資料中與索引中的標籤相對應值。

示例 1

以下是使用 Python 字典建立 Series 物件的基本示例。

#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
data = {'a' : 0., 'b' : 1., 'c' : 2.}
s = pd.Series(data)
print(s)

輸出如下:

a 0.0
b 1.0
c 2.0
dtype: float64

注意:字典鍵用於構建索引。

示例 2

在此示例中,透過顯式指定索引標籤,使用 Python 字典建立 Series 物件。

#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
data = {'a' : 0., 'b' : 1., 'c' : 2.}
s = pd.Series(data,index=['b','c','x','a'])
print(s)

輸出如下:

b 1.0
c 2.0
d NaN
a 0.0
dtype: float64

注意:索引順序保持不變,缺失元素用 NaN(非數字)填充。

從標量建立 Series

如果將單個標量值作為資料提供給Pd.Series()建構函式,並指定索引標籤。然後將重複該單個值以匹配提供的index物件的長度。

示例

以下示例演示瞭如何使用單個標量值建立 Series 物件。

#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
s = pd.Series(5, index=[0, 1, 2, 3])
print(s)

輸出如下:

0  5
1  5
2  5
3  5
dtype: int64
廣告