numpy.ma.vstack#

ma.vstack(tup, *, dtype=None, casting='same_kind')[源代码]#

按顺序垂直(逐行)堆叠数组。

这等同于在 1-D 数组(形状为 (N,))被重塑为 (1,N) 后,沿着第一个轴进行连接。通过 vsplit 分割的数组将被重新组合。

此函数对于维度最多为 3 的数组最有意义。例如,对于具有高度(第一个轴)、宽度(第二个轴)和 r/g/b 通道(第三个轴)的像素数据。函数 concatenatestackblock 提供了更通用的堆叠和连接操作。

参数:
tupndarray序列

数组必须沿着除第一个轴之外的所有轴具有相同的形状。1-D 数组必须具有相同的长度。在输入为单个 `array_like` 的情况下,它将被视为一个数组序列;即,沿第零轴的每个元素被视为一个单独的数组。

dtypestr 或 dtype

如果提供,则目标数组将具有此 dtype。不能与 out 一起提供。

版本1.24中新增。

casting{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, optional

控制允许哪种类型的数据转换。默认为 'same_kind'。

版本1.24中新增。

返回:
stackedndarray

通过堆叠给定数组形成的数组至少是 2-D 的。

另请参阅

concatenate

沿现有轴连接数组序列。

stack

沿新轴连接数组序列。

block

从嵌套块列表中组装 ndarray。

hstack

按顺序水平(逐列)堆叠数组。

dstack

按顺序按深度(沿第三轴)堆叠数组。

column_stack

将 1D 数组作为列堆叠到 2D 数组中。

vsplit

将数组垂直(按行)分割成多个子数组。

unstack

沿轴将数组分割成一个子数组元组。

备注

该函数应用于 _data_mask(如果存在)。

示例

>>> import numpy as np
>>> a = np.array([1, 2, 3])
>>> b = np.array([4, 5, 6])
>>> np.vstack((a,b))
array([[1, 2, 3],
       [4, 5, 6]])
>>> a = np.array([[1], [2], [3]])
>>> b = np.array([[4], [5], [6]])
>>> np.vstack((a,b))
array([[1],
       [2],
       [3],
       [4],
       [5],
       [6]])