2017-04-27 53 views
1

我有numpy.ndarrays列表 - 每個形狀的(33,1,8,45,3)np.concatenate新維度中的numpy.ndarray列表?

問題,當我串聯使用列表a = np.concatenate(list) 的輸出形狀變得

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

代替形狀(22,33,1,8,45,3)

如何幹淨地連接列表,而不必更改輸入。

+1

怎麼樣'np.array(input_list)'或'甚至np.asarray'? – Divakar

回答

2

您可以使用numpy.array()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) 
1

np.concatenate

加入陣列序列沿現有軸線

np.stack

堆棧沿新軸線陣列序列。

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