np.concate在新维度中的numpy.ndarray列表?

时间:2017-04-27 11:42:09

标签: python numpy

我有一个包含numpy.ndarrays的列表 - 每个形状(33,1,8,45,3)

当我使用a = np.concatenate(list)连接列表时出现问题 a的输出形状变为

print a.shape 
(726,1,8,45,3)

而不是形状(22,33,1,8,45,3)

如何干净地连接列表,而无需更改输入。

2 个答案:

答案 0 :(得分:2)

np.concatenate

  

沿着现有轴加入一系列数组。

np.stack

  

沿新轴堆叠一系列数组。

a = np.ones((3, 4))
b = np.stack([a, a])
print(b.shape)  # (2, 3, 4)

答案 1 :(得分:2)

您可以使用numpy.stack()import numpy a = [numpy.random.rand(33,1,8,45,3) for i in range(22)] b = numpy.array(a) b.shape # (22, 33, 1, 8, 45, 3) c = numpy.stack(a, axis=0) c.shape # (22, 33, 1, 8, 45, 3)

'x,y',2,4,'y,z'