📜  Python numpy.flatten()

📅  最后修改于: 2020-10-27 08:12:48             🧑  作者: Mango

Python的numpy.ndarray.flatten()

在Python,在某些情况下,我们需要一维数组而不是二维或多维数组。为此,numpy模块提供了一个名为numpy.ndarray.flatten()的函数,该函数以一维而不是二维或多维数组的形式返回数组的副本。

句法

ndarray.flatten(order='C')

参数:

顺序:{‘C’,’F’,’A’,’K’}(可选)

如果将order参数设置为’C’,则意味着该数组以行优先顺序变平。如果设置为“ F”,则数组将按列优先顺序展平。仅当“ a”在内存中是连续的,并且当我们将order参数设置为“ A”时,才按列优先顺序对数组进行展平。最后一个顺序是“ K”,它以与元素在内存中出现的顺序相同的方式展平数组。默认情况下,此参数设置为“ C”。

返回值:

y:ndarray

此函数返回源数组的副本,该副本将展平为一维。

范例1:

import numpy as np
a = np.array([[1,4,7], [2,5,8],[3,6,9]])
b=a.flatten()
b

输出:

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

在上面的代码中

  • 我们导入了别名为np的numpy。
  • 我们使用array()函数创建了多维数组’a’。
  • 我们已经声明了变量’b’并分配了flatten()函数的返回值。
  • 最后,我们尝试print‘b’的值。

在输出中,它显示了一个ndarray,其中包含多维数组的一维元素。

范例2:

import numpy as np
a = np.array([[1,4,7], [2,5,8],[3,6,9]])
b=a.flatten('C')
b

输出:

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

在上面的代码中

  • 我们导入了别名为np的numpy。
  • 我们使用array()函数创建了多维数组’a’。
  • 我们已经声明了变量’b’并分配了flatten()函数的返回值。
  • 我们在函数使用了“ C”顺序。
  • 最后,我们尝试print‘b’的值。

在输出中,它显示了一个ndarray,其中包含多维数组的一维元素。

范例3:

import numpy as np
a = np.array([[1,4,7], [2,5,8],[3,6,9]])
b=a.flatten('F')
b

输出:

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

范例4:

import numpy as np
a = np.array([[1,4,7], [2,5,8],[3,6,9]])
b=a.flatten('A')
b

输出:

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

范例5:

import numpy as np
a = np.array([[1,4,7], [2,5,8],[3,6,9]])
b=a.flatten('K')
b

输出:

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