Python 中的 numpy.ravel()

2024 年 8 月 29 日 | 阅读 3 分钟

Python 的 numpy 模块提供了一个名为 numpy.ravel 的函数,该函数用于将二维数组或多维数组更改为连续的展平数组。返回的数组与源数组或输入数组具有相同的数据类型。如果输入数组是掩码数组,则返回的数组也将是掩码数组。

语法

参数

x: array_like

此参数定义了输入数组,我们希望将其更改为连续的展平数组。数组元素按照 order 参数指定的顺序读取,并打包成一维数组。

order: {'C','F', 'A', 'K'}(可选)

如果我们将 order 参数设置为 'C',这意味着数组以行优先顺序展平。如果设置为 'F',则数组以列优先顺序展平。仅当 'A' 在内存中是 Fortran 连续的时,数组才会以列优先顺序展平,并且当我们设置 order 参数为 'A' 时。最后一个 order 是 'K',它以元素在内存中出现的相同顺序展平数组。默认情况下,此参数设置为 'C'。

返回值

此函数返回一个连续的展平数组,其数据类型与输入数组相同,并且形状等于 (x.size)。

示例 1

输出

array([ 1,  3,  5, 11, 35, 56])

在上面的代码中

  • 我们使用别名 np 导入了 numpy。
  • 我们已经使用 np.array() 函数创建了一个数组 'x'
  • 我们声明了变量 y 并分配了 np.ravel() 函数的返回值。
  • 我们在函数中传递了数组'x'
  • 最后,我们尝试打印 y 的值。

在输出中,数组的值显示在连续的展平数组中。

示例 2

输出

array([ 1, 11,  3, 35,  5, 56])
array([ 1,  3,  5, 11, 35, 56])
array([ 1,  3,  5, 11, 35, 56])
array([ 1,  3,  5, 11, 35, 56])

示例 3

输出

array([[[ 0,  2],
        	[ 1,  3]],

       	[[ 4,  6],
        	[ 5,  7]],

       	[[ 8, 10],
        	[ 9, 11]]])
array([ 0,  2,  1,  3,  4,  6,  5,  7,  8, 10,  9, 11])
array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11])
array([ 0,  2,  1,  3,  4,  6,  5,  7,  8, 10,  9, 11])

在上面的代码中

  • 我们使用别名 np 导入了 numpy。
  • 我们已经使用 np.arange() 函数创建了一个数组 'x'
  • 我们使用 reshape()np.swapaxes() 函数更改了其形状并交换了轴。
  • 我们声明了变量 y、z 和 q 并分配了 np.ravel() 函数的返回值。
  • 我们在函数中传递了数组 'x' 和 order CKA
  • 最后,我们尝试打印 y 的值。

在输出中,数组的值显示在连续的展平数组中。


下一主题Numpy.save()