Python Pandas - 將 Series 轉換為其他物件



Pandas Series 是一種一維類似陣列的物件,包含任何型別的資料,例如整數、浮點數和字串。資料元素與標籤(索引)相關聯。在某些情況下,您需要將 Pandas Series 轉換為不同的格式以用於各種用例,例如建立列表、NumPy 陣列、字典,甚至將 Series 轉換為 DataFrame。

在本教程中,我們將學習 Pandas 中可用於將 Series 轉換為不同格式(例如列表、NumPy 陣列、字典、DataFrame 和字串)的各種方法。

以下是將 Series 轉換為其他格式的常用方法:

方法 描述
to_list() 將 Series 轉換為 Python 列表。
to_numpy() 將 Series 轉換為 NumPy 陣列。
to_dict() 將 Series 轉換為字典。
to_frame() 將 Series 轉換為 DataFrame。
to_string() 將 Series 轉換為字串表示形式以進行顯示。

將 Series 轉換為列表

Series.to_list() 方法將 Pandas Series 轉換為 Python 列表,其中 Series 的每個元素都成為返回列表中的一個元素。列表中每個元素的型別與 Series 中的型別相同。

示例

以下是使用 Series.to_list() 方法將 Pandas Series 轉換為 Python 列表的示例。

import pandas as pd

# Create a Pandas Series
s = pd.Series([1, 2, 3])

# Convert Series to a Python list
result = s.to_list()

print("Output:",result)
print("Output Type:", type(result))

以下是上述程式碼的輸出:

Output: [1, 2, 3]
Output Type: <class 'list'>

將 Series 轉換為 NumPy 陣列

Pandas Series.to_numpy() 方法可用於將 Pandas Series 轉換為 NumPy 陣列。此方法提供了其他功能,例如指定資料型別 (dtype)、處理缺失值 (na_value) 和控制結果是否應為副本或檢視。

示例

此示例使用 Series.to_numpy() 方法將 Series 轉換為 NumPy 陣列。

import pandas as pd

# Create a Pandas Series
s = pd.Series([1, 2, 3])

# Convert Series to a NumPy Array
result = s.to_numpy()

print("Output:",result)
print("Output Type:", type(result))
Output: [1, 2, 3]
Output Type: <class 'numpy.ndarray'>

將 Pandas Series 轉換為字典

Pandas Series.to_dict() 方法用於將 Series 轉換為 Python 字典,其中每個標籤(索引)都成為一個鍵,每個對應值都成為字典的值。

示例

以下示例使用 Series.to_dict() 方法將 Series 轉換為 Python 字典。

import pandas as pd

# Create a Pandas Series
s = pd.Series([1, 2, 3], index=['a', 'b', 'c'])

# Convert Series to a Python dictionary
result = s.to_dict()

print("Output:",result)
print("Output Type:", type(result))
Output: {'a': 1, 'b': 2, 'c': 3}
Output Type: <class 'dict'>

將 Series 轉換為 DataFrame

Series.to_frame() 方法允許您將 Series 轉換為 DataFrame。每個 Series 都成為 DataFrame 中的一列。此方法提供了一個 name 引數來設定結果 DataFrame 的列名。

示例

此示例使用 Series.to_frame() 方法將 Series 轉換為具有單個列的 Pandas DataFrame。

import pandas as pd

# Create a Pandas Series
s = pd.Series([1, 2, 3], index=['a', 'b', 'c'])

# Convert Series to a Pandas DataFrame
result = s.to_frame(name='Numbers')

print("Output:\n",result)
print("Output Type:", type(result))
Output:    
Numbers
a 1
b 2
c 3
Output Type: <class 'pandas.core.frame.DataFrame'>

將 Series 轉換為 Python 字串

要將 Pandas Series 物件轉換為 Python 字串,您可以使用 Series.to_string() 方法,該方法呈現 Series 的字串表示形式。

此方法返回一個字串,顯示 Series 的索引和值。您可以使用各種引數(如 na_rep(表示缺失值)、header、index、float_format、length 等)自定義輸出字串。

示例

此示例使用 Series.to_string() 方法將 Series 轉換為 Python 字串表示形式。

import pandas as pd

# Create a Pandas Series
s = pd.Series([1, 2, 3], index=['r1', 'r2', 'r3'])

# Convert Series to string representation
result = s.to_string()

print("Output:",repr(result))
print("Output Type:", type(result))
Output: 'r1    1\nr2    2\nr3    3'
Output Type: <class 'str'>
廣告