Pandas:如何将特定列转换为 numpy 数组
您可以使用以下方法将 pandas DataFrame 的特定列转换为 NumPy 数组:
方法 1:将列转换为 NumPy 数组
column_to_numpy = df[' col1 ']. to_numpy ()
方法 2:将多列转换为 NumPy 数组
columns_to_numpy = df[[' col1 ', ' col3 ', ' col4 ']]. to_numpy ()
以下示例展示了如何在实践中使用以下 pandas DataFrame 的每种方法:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame print (df) team points assists rebounds 0 A 18 5 11 1 B 22 7 8 2 C 19 7 10 3 D 14 9 6 4 E 14 12 6 5 F 11 9 5 6 G 20 9 9 7:28 4 12
示例 1:将列转换为 NumPy 数组
以下代码显示了如何将 DataFrame 的点列转换为 NumPy 数组:
#convert points column to NumPy array
column_to_numpy = df[' points ']. to_numpy ()
#view result
print (column_to_numpy)
[18 22 19 14 14 11 20 28]
我们可以使用type()函数确认结果确实是一个 NumPy 数组:
#view data type
print ( type (column_to_numpy))
<class 'numpy.ndarray'>
示例 2:将多列转换为 NumPy 数组
以下代码展示了如何将 DataFrame 的团队和协助列转换为多维 NumPy 数组:
#convert team and assists columns to NumPy array
columns_to_numpy = df[[' team ', ' assists ']]. to_numpy ()
#view result
print (columns_to_numpy)
[['AT 5]
['B' 7]
['C' 7]
['D' 9]
['E' 12]
['F' 9]
['G' 9]
['H' 4]]
我们可以使用type()函数确认结果确实是一个 NumPy 数组:
#view data type
print ( type (columns_to_numpy))
<class 'numpy.ndarray'>
我们还可以使用shape函数来显示生成的 NumPy 数组的形状:
#view shape of array
print (columns_to_numpy. shape )
(8, 2)
我们可以看到生成的 NumPy 数组有 8 行 2 列。
其他资源
以下教程解释了如何在 NumPy 中执行其他常见任务: