numpy.dstack
numpy.dstack(tup) [source]
沿深度方向(沿第三轴)按顺序Stack数组。
这相当于在形状(M,N)的二维数组被重塑为(M,N,1)和形状(N,)的一维数组被重塑为(1,N,1)之后沿第三轴的连接。重新构建按dsplit分割的数组。
这个函数对于3维以下的数组最有意义。例如,对于具有高度(第一个轴)、宽度(第二个轴)和r/g/b通道(第三个轴)的像素数据。函数concatenate
, stack
和block
提供了更一般的堆叠和连接操作。
参数 : | tup :arrays的sequence 除第三个轴外,所有阵列的形状都必须相同。 一维或二维阵列必须具有相同的形状。 |
返回值 : | stacked : 通过堆叠给定阵列形成的阵列将至少为3D。 |
例子
1)使用 dstack 将两个数组堆叠
import numpy as np # 创建两个 2D 数组 arr1 = np.array([[1, 2], [3, 4]]) arr2 = np.array([[5, 6], [7, 8]]) # 使用 dstack 将两个数组堆叠 result = np.dstack((arr1, arr2)) print(result)
2)使用 dstack 将这三个数组堆叠
import numpy as np # 创建三个 1D 数组 arr1 = np.array([1, 2, 3]) arr2 = np.array([4, 5, 6]) arr3 = np.array([7, 8, 9]) # 使用 dstack 将这三个数组堆叠 result = np.dstack((arr1, arr2, arr3)) print(result)