existe-t-il une sorte de "non logique" pour les tableaux numpy (de nombres bien sûr).
Par exemple, considérons ce tableau:
x = [1,0,1,0,0,1]
Je recherche un moyen simple de calculer son "inverse"
y = [0,1,0,1,1,0]
4 Réponses :
Pour un tableau de 1s et 0s , vous pouvez simplement soustraire les valeurs de x de 1 : XXX
Ou vous pouvez également prendre le XOR au niveau du bit des valeurs binaires dans x avec 1 :
x^1 # array([0, 1, 0, 1, 1, 0])
Oui, vous pouvez utiliser np.logical_not:
array([0, 1, 0, 1, 1, 0])
Output:
np.logical_not(x).astype(int)
Ou en utilisant XOR:
y = [n ^ 1 for n in x]
Voici une façon:
[0 1 0 1 1 0]
Alternativement:
y = 0 + (x == 0)
Sortie:
y = (x == 0).astype(int)Remarques:
(x == 0) donne un tableau booléen où False apparaît à la place de 1 et True code> apparaît à la place de 0 . astype (int) , ou l'ajout du scalaire 0 à la matrice, convertit False en 0 code > et True à 1