numpy.dstack#

numpy.dstack(tup)[source]#

沿深度方向(沿第三轴)堆叠数组序列。

这等价于在将形状为 (M,N) 的二维数组重塑为 (M,N,1),以及将形状为 (N,) 的一维数组重塑为 (1,N,1) 之后,沿第三轴进行拼接。它重建了由 dsplit 分割的数组。

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

参数:
tup数组序列

除了第三轴外,数组在其他轴上必须具有相同的形状。一维或二维数组必须具有相同的形状。

返回:
stackedndarray

由给定数组堆叠而成的数组,将至少是三维的。

另请参阅

concatenate

沿现有轴连接数组序列。

stack

沿新轴连接数组序列。

block

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

vstack

按垂直方向(按行)堆叠数组序列。

hstack

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

column_stack

将一维数组堆叠为列,形成一个二维数组。

dsplit

沿第三轴分割数组。

示例

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