Sto tentando di riscrivere una funzione usando numpy che è originariamente in MATLAB. C'è una parte logica di indicizzazione che è la seguente in MATLAB:Ottenere una griglia di una matrice tramite l'indicizzazione logica in Numpy
X = reshape(1:16, 4, 4).';
idx = [true, false, false, true];
X(idx, idx)
ans =
1 4
13 16
Quando provo a fare in NumPy, non riesco a ottenere la corretta indicizzazione:
X = np.arange(1, 17).reshape(4, 4)
idx = [True, False, False, True]
X[idx, idx]
# Output: array([6, 1, 1, 6])
Qual è il modo corretto di ottenere una griglia dalla matrice tramite indicizzazione logica?
I bandi che posso farlo tramite 'X [idx,:] [:, idx]', ma non è poi così strano? – petrichor