numpy.hstack#

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

按水平方向(按列)顺序堆叠数组.

这等效于沿第二个轴的连接,除了1-D数组沿着第一个轴连接.重建被 hsplit 分割的数组.

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

参数:
tupndarray 序列

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

dtypestr or dtype

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

在 1.24 版本加入.

casting{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, 可选

控制可能发生的数据类型转换种类.默认为 ‘same_kind’.

在 1.24 版本加入.

返回:
stackedndarray

通过堆叠给定数组形成的数组.

参见

concatenate

沿现有轴连接一系列数组.

stack

沿新轴连接一系列数组.

block

从嵌套的块列表中组装一个 nd-array.

vstack

按垂直方向(按行)顺序堆叠数组.

dstack

沿深度方向(沿第三个轴)顺序堆叠数组.

column_stack

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

hsplit

将数组水平(按列)分割成多个子数组.

unstack

沿轴将数组分割成子数组的元组.

示例

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