将 Pandas 系列转换为 NumPy 数组

Muhammad Maisam Abbas 2023年1月30日 2021年7月8日
  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