2D 数组到 3D 数组的数量,扩展第三维

Posted

技术标签:

【中文标题】2D 数组到 3D 数组的数量,扩展第三维【英文标题】:Number of 2D array to 3D array, extending third dimension 【发布时间】:2019-08-20 06:15:14 【问题描述】:

我有 10 个不同大小的矩阵 (60, 100)。我想将它们沿第三维放在 for 循环内,以便最终形状为 (10, 60, 100)

我尝试了连接并最终得到大小(600, 100)

【问题讨论】:

向我们展示您尝试过的代码 Expanding NumPy array over extra dimension的可能重复 我有 10 个不同大小的矩阵(60,100) 【参考方案1】:

@MahmoudGe我的回答是我的最爱。但也有另一种方式可供参考:

out = np.concatenate((mat1[np.newaxis,:],mat1[np.newaxis,:],...),axis=0)

【讨论】:

【参考方案2】:

numpy.stack 将允许您沿新轴连接。

arrays = [mat1,mat2,.....]
out=np.stack(arrays, axis=0)

【讨论】:

【参考方案3】:

尝试创建一个用二维数组填充的新数组

new3DArray = numpy.empty(10, 60, 100)

【讨论】:

以上是关于2D 数组到 3D 数组的数量,扩展第三维的主要内容,如果未能解决你的问题,请参考以下文章

使用OR将3D布尔数组缩减为2D

二维数组 cudaMallocPitch() 和三维数组 cudaMalloc3D() 的使用

如何将二维数组复制到第三维,N次?

用照片进行三维模型重建

用照片进行三维模型重建

用照片进行三维模型重建