您好,登錄后才能下訂單哦!
現在我們有一個shape為(7352, 9, 128, 1)的numpy數組。
想要取出第2維的前三個數據,構成新數組(7352, 3, 128, 1)
我的思想是:將第2維數據轉置(transpose)到第一維,再用切片(slice)取出前三個數據,再轉置回去:
print("# original", input.shape) input_transpose = input.transpose((1, 0, 2, 3)) print("# transpose", input_transpose.shape) input_slice = input_transpose[0:3] print("# slice", input_slice.shape) output = input_slice.transpose((1, 0, 2, 3)) print("# output", output.shape)
其實更簡單的做法是:
print("# original", input.shape) print("# output", input[:, [0, 1, 2]].shape)
以上這篇Python 實現取多維數組第n維的前幾位就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。