numpy 的 ndarray 是一个多维数组对象,有时需要读取其中的数据。有几种方法可以做到这一点。
最简单的读取 ndarray 数据的方法是将其转换为 python 列表:
import numpy as np a = np.array([[1, 2], [3, 4]]) a_list = a.tolist() print(a_list) # [[1, 2], [3, 4]]
对于多维数组,tolist() 会递归地将每一层转换为列表:
b = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) b_list = b.tolist() print(b_list) # [[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]
另一个获取 ndarray 数据的方法是使用 item() 函数。item() 返回指定索引处的值。
c = np.array([1, 2, 3, 4, 5]) print(c.item(2)) # 3
对于多维数组,item() 函数必须提供所有维度的索引:
d = np.array([[1, 2, 3], [4, 5, 6]]) print(d.item(1, 2)) # 6
使用 tolist() 或者 item() 函数,都可以方便地读取 ndarray 中的数据,以进行进一步处理或分析。