首页 > 解决方案 > 将“n”个 2D 矩阵存储到单个 3D 矩阵中

问题描述

我有“n”个相同大小的二维矩阵。我想将所有这些 2D 矩阵一一存储到一个 3D numpy 矩阵/数组中。

谁能告诉我如何在python中做到这一点?

标签: pythonarraysnumpymultidimensional-arraynumpy-ndarray

解决方案


您可以使用numpy.dstack()例如:

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

输出:

[[[1 2 3]
 [2 3 4]
 [3 4 5]]

[[1 2 3]
 [2 3 4]
 [3 4 5]]]

更新新问题:

此外,您可以一次又一次地添加另一个 2d,例如:

d = np.array([[3,4,5],[3,4,5]])
new_3d = np.dstack((new_3d,d))

输出:

[[[1 2 3 3]
 [2 3 4 4]
 [3 4 5 5]]

 [[1 2 3 3]
 [2 3 4 4]
 [3 4 5 5]]]

推荐阅读