假设我有 N 个 numpy 数组,每个数组的大小为 (x, y, z),其中 y 和 z 对于所有数组都是相同的,但每个数组的 x 不同。我如何将这些组合成一个大小为 (w, y, z) 的 numpy 数组,其中 w 是所有 x 的总和。或者,对于一个数字示例:我有一个包含 3 个大小为 (14、32、32)、(7、32、32)、(50、32、32) 的 numpy 数组的列表。如何有效地将这些转换为 (71, 32, 32) 大小的 numpy 数组?
2 回答
胡说叔叔
TA贡献1804条经验 获得超8个赞
您可以将它们沿第一个轴连接起来。如果您的 3 个 numpy 数组被命名为 x1、x2 和 x3,那么您的新数组将被定义为x_combined = np.concatenate((x1,x2,x3),axis=0)
浮云间
TA贡献1829条经验 获得超4个赞
尝试np.vstack
a, b , c = np.ones((14, 32, 32)), np.ones((7, 32, 32)), np.ones((50, 32, 32))
out = np.vstack([a,b,c])
In [119]: a.shape
Out[119]: (14, 32, 32)
In [120]: b.shape
Out[120]: (7, 32, 32)
In [121]: c.shape
Out[121]: (50, 32, 32)
In [122]: out.shape
Out[122]: (71, 32, 32)
添加回答
举报
0/150
提交
取消