上一主题

numpy.concatenate

下一主题

numpy.column_stack

numpy.stack

numpy.stack(arrays, axis=0)[source]

沿着新轴连接数组的序列。

axis参数指定新轴在结果尺寸中的索引。例如,如果axis=0,它将是第一个维度,如果axis=-1,它将是最后一个维度。

版本1.10.0中的新功能。

参数:

数组:array_like的序列

每个数组必须具有相同的形状。

axis:int,可选

输入数组沿其堆叠的结果数组中的轴。

返回:

堆叠:ndarray

堆叠数组比输入数组多一个维。

也可以看看

concatenate
沿现有轴连接数组序列。
split
将数组拆分成等大小的多个子数组的列表。

例子

>>> arrays = [np.random.randn(3, 4) for _ in range(10)]
>>> np.stack(arrays, axis=0).shape
(10, 3, 4)
>>> np.stack(arrays, axis=1).shape
(3, 10, 4)
>>> np.stack(arrays, axis=2).shape
(3, 4, 10)
>>> a = np.array([1, 2, 3])
>>> b = np.array([2, 3, 4])
>>> np.stack((a, b))
array([[1, 2, 3],
       [2, 3, 4]])
>>> np.stack((a, b), axis=-1)
array([[1, 2],
       [2, 3],
       [3, 4]])