numpy.hstack#

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

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

这等同于沿第二个轴进行连接,但对于 1-D 数组,它会沿第一个轴进行连接。它会重建被 hsplit 分割的数组。

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

参数:
tupndarrays 序列

除第二个轴外,所有数组的形状必须相同,但 1-D 数组可以具有任意长度。如果输入是单个类数组对象,它将被视为数组序列;即,沿零轴的每个元素都被视为一个单独的数组。

dtypestr 或 dtype

如果提供,目标数组将具有此 dtype。不能与 out 同时提供。

1.24 版本新增。

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

控制可能发生的数据类型转换。默认为 'same_kind'。

1.24 版本新增。

返回:
stackedndarray

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

另请参阅

concatenate

沿现有轴连接数组序列。

stack

沿新轴连接数组序列。

block

从块的嵌套列表组装 nd 数组。

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]])