← retour aux snippets

numpy: boolean & fancy indexing

Sélectionner par masque booléen ou index entiers.

python numpy #numpy#indexing#mask

objectif

Sélectionner par masque booléen ou index entiers.

code minimal

import numpy as np

x = np.array([1,2,3,4,5])
print(x[x%2==0].tolist())

utilisation

import numpy as np

X = np.arange(12).reshape(3,4)
rows = [0,2]; cols = [1,3]
print(X[np.ix_(rows, cols)].tolist())

variante(s) utile(s)

import numpy as np

idx = np.array([2,0,2,1])
print(np.take(x, idx).tolist())

notes

  • np.ix_ facilite les sous-matrices rectangulaires.