2016-10-03 162 views
0

設Y爲100個規則的列表,使得Y [i]是圖像的圖像,其形狀是160x320x3。將多維數組列表轉換爲單個多維數組?

我想X無是包含所有圖像的ndarrays,我做如下:

x = [ y[i] for i in range(0,10) ] 

,但它產生的100個160X320X3 ndarrays列表。我如何修改它以獲得形狀爲100x160x320x3的ndarray?

+1

我假設你正在使用'numpy',所以我可以添加標籤? –

+0

是的。謝謝。 –

回答

2

Y(即np.array(Y))上調用np.array應該將ndarray列表變成一個ndarray,其中第一個軸的大小對應於列表的長度。

演示

>>> x = np.array([[1,2], [3,4]]) 
>>> c = [x,x] # list of 2x2 arrays 
>>> c 
[array([[1, 2], 
     [3, 4]]), 
array([[1, 2], 
     [3, 4]])] 
>>> np.array(c) # 2x2x2 array 
array([[[1, 2], 
     [3, 4]], 

     [[1, 2], 
     [3, 4]]]) 

只需撥打np.arrayY,或x如果你只想要Y片。