Seite 1 von 1

Spalten löschen nach Kriterium Numpy Array

Verfasst: Sonntag 22. Mai 2016, 18:38
von Wurzelbert
Hey liebe Leute,
ich habe ein Graustufenarray, in dem entweder Werte mit 255 oder 0 sind.
Nun will ich alle Spalten löschen, in denen lediglich die 255 auftaucht.
Gibt es dafür eine schöne Python Lösung, ohne komplett durchiterieren zu müssen
, ähnlich wie es mit den Zeilen Funktioniert (arr = arr[~(arr==255).all(1)]) ?

Danke schon mal im voraus. (:

Re: Spalten löschen nach Kriterium Numpy Array

Verfasst: Sonntag 22. Mai 2016, 20:33
von BlackJack
@Wurzelbert: Du musst doch nur die Axis für das `all()` und das slicing entsprechend anpassen:

Code: Alles auswählen

In [12]: A
Out[12]: 
array([[  0,   0, 255],
       [255, 255, 255],
       [255,   0, 255]])

In [13]: A[:,~(A == 255).all(0)]
Out[13]: 
array([[  0,   0],
       [255, 255],
       [255,   0]])