2015-10-20 12 views
-3

的刪除尺寸我有形狀mutlidimensional陣列

(512, 240, 1, 3, 3) 

數組我怎樣才能獲得紅最後一維的。應與

np.delete 

但無法弄清楚究竟如何。所有的例子都在2D ...


我想我錯誤地表達了這個問題。我看了是

A = A[:,:,:,0] 

對不起

+0

應該是什麼輸出的形狀? –

+0

什麼A [:,:,:,:,1]或A [:,:,:,:,2]?他們回覆相同的形狀。 –

回答

1

我相信(512, 240, 1, 3, 3)是一個元組(您正在使用的數據),而不是你的陣列的形狀。與numpy.delete刪除(在你的情況3)最後一維,你可以做到以下幾點:

>>> import numpy as np 
>>> a=np.array((512, 240, 1, 3, 3)) 
>>> a=np.delete(a,4) 
>>> a 
array([512, 240, 1, 3]) 

記住numpy.delete返回新數組和原來保持不變。這就是爲什麼我做了a=np.delete(...)

+0

我真的不知道這個答案:a.shape是(5) –

+0

@ M.Massias,好吧,如果'了'應該被修改,隨後剛剛分配的'np.delete' – ForceBru

+0

返回值不,我意味着問題的第一行是:我有形狀(512,240,1,3,3)的陣列。你的陣列,甚至修改它之前,是形狀(5) –

1

我不完全知道你的意思是刪除最後一個維度,但如果你要合併的最後兩個維度,可以使用np.reshape(yourArray, (512, 240, 1, 3*3))