Numpy 中的 ravel() 和 flatten()

Numpy 中的 ravel() 和 flatten()两个函数可以对多维数据进行扁平化操作。

flatten() 返回的是一个数组的的副本,新的对象;ravel() 返回的是一个数组的非副本视图。

示例:

numbers = [i* 10 + j for i in range(1, 5) for j in range(1, 5)]
arr = np.array(numbers).reshape(4, 4)
arr

 

 

 1、flatten()

a1 = arr.flatten()
a1

 

 flatten() 返回新对象

id(arr), id(a1)

 

2、ravel()

a2 = arr.ravel()
a2

 

ravel() 返回视图

id(arr), id(a2)

 

 

 

原文地址:https://www.cnblogs.com/shanger/p/12925571.html