將 Pandas 系列轉換為 NumPy 陣列

Muhammad Maisam Abbas 2024年2月16日
  1. 使用 pandas.index.values 屬性將 Pandas 系列轉換為 NumPy 陣列
  2. 使用 pandas.index.to_numpy() 函式將 Pandas 系列轉換為 NumPy 陣列
  3. 使用 pandas.index.array 屬性將 Pandas 系列轉換為 NumPy 陣列
將 Pandas 系列轉換為 NumPy 陣列

本教程將討論如何在 Python 中將 Pandas 系列轉換為 NumPy 陣列。

使用 pandas.index.values 屬性將 Pandas 系列轉換為 NumPy 陣列

如果我們想將 Pandas 系列轉換為 NumPy 陣列,我們可以使用 pandas.index.values 屬性。pandas.index.values 屬性以陣列的形式返回索引處的值。然後我們可以使用 numpy.array() 函式將該陣列轉換為 NumPy 陣列。請參考以下程式碼示例。

import pandas as pd
import numpy as np

df = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]}, index=["a", "b", "c"])

array = np.array(df.index.values)
print(array)

輸出:

['a' 'b' 'c']

我們首先使用 pd.DataFrame() 函式建立了 Pandas 系列 df。然後我們將 df 轉換為具有 df.index.values 屬性的陣列,並使用 np.array() 函式將其儲存在 NumPy 陣列 array 中。

使用 pandas.index.to_numpy() 函式將 Pandas 系列轉換為 NumPy 陣列

pandas.index.values 方法目前工作正常,但已棄用,並將在 Pandas 包的未來版本中刪除。pandas.index.values 屬性的一個很好的替代品是 pandas.index.to_numpy() 函式。pandas.index.to_numpy() 函式直接將 Pandas 系列內部的值轉換為 NumPy 陣列,所以我們不需要顯式使用 numpy.array() 函式。以下程式碼示例向我們展示瞭如何使用 pandas.index.to_numpy() 函式將 Pandas 系列轉換為 NumPy 陣列。

import pandas as pd

df = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]}, index=["a", "b", "c"])

array = df.index.to_numpy()
print(array)

輸出:

['a' 'b' 'c']

我們首先使用 pd.DataFrame() 函式建立了 Pandas 系列 df。然後,我們使用 df.index.to_numpy() 函式將 df 轉換為 NumPy 陣列,並將結果儲存在 array 中。

使用 pandas.index.array 屬性將 Pandas 系列轉換為 NumPy 陣列

另一種可以用來代替 pandas.index.values 屬性的方法是 pandas.index.array 屬性。pandas.index.array 屬性 將 Pandas 系列轉換為 Pandas 陣列。我們可以使用 numpy.array() 函式將這個 Pandas 陣列轉換為 NumPy 陣列。請參考以下程式碼示例。

import pandas as pd
import numpy as np

df = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]}, index=["a", "b", "c"])

array = np.array(df.index.array)
print(array)

輸出:

['a' 'b' 'c']

我們首先使用 pd.DataFrame() 函式建立了 Pandas 系列 df。然後,我們將 df 轉換為具有 df.index.array 屬性的 Pandas 陣列,並使用 numpy.array() 函式將結果儲存在 NumPy 陣列 array 中。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn