0
我有一個2維的416 * 416陣列,我想將它縮小到左上角來製作一個387 * 387陣列。對於我的生活,我無法弄清楚如何做到這一點。在numpy中,如何選擇二維數組的子集?
我試過數組[範圍(387),範圍(387)]和掩碼的變體,但沒有任何作用。
我有一個2維的416 * 416陣列,我想將它縮小到左上角來製作一個387 * 387陣列。對於我的生活,我無法弄清楚如何做到這一點。在numpy中,如何選擇二維數組的子集?
我試過數組[範圍(387),範圍(387)]和掩碼的變體,但沒有任何作用。
這是你在找什麼:
A[:387, :387]
但你已經試過什麼:
A[range(387), range(387)]
應該正常工作。 (雖然在簡單的情況下,簡單的拼接通常是更清晰,更有效。)
只是一個代碼示例爲你想要做什麼可能是錯誤的(即可能還有一些其他的問題,你的代碼):
import numpy as np
# create an array (shape 10 x 8)
A = np.arange(80).reshape(10,8)
# create a smaller array (5x4) of the top left corner
B = A[:5,:4]