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 中执行其他常见任务:

如何从 NumPy 数组中删除特定元素
如何替换 NumPy 数组中的元素
如何从 NumPy 数组中获取特定行

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注