Wie kann ich die Werte in einem numpligen Array unter Berücksichtigung von Nanonummern bedingt ändern?

7

Mein Array ist eine 2D-Matrix und hat numpy.nan-Werte neben negativen und positiven Werten:

%Vor%

Und ich möchte alle positiven Zahlen durch eine Nummer und alle negativen Zahlen durch eine andere Nummer ersetzen.

Wie kann ich das mit python / numpy durchführen?

(Für die Aufzeichnung ist die Matrix ein Ergebnis von geoimage, das ich eine Klassifikation durchführen möchte)

    
user528025 14.09.2012, 12:43
quelle

2 Antworten

24

Die Tatsache, dass Sie np.nan in Ihrem Array haben, sollte keine Rolle spielen. Verwenden Sie einfach eine ausgefallene Indizierung:

%Vor%

Wenn Sie Ihr np.nans ersetzen möchten:

%Vor%

Weitere Informationen über die ausgefallene Indizierung eine Einführung und die NumPy Dokumentation .

    
Pierre GM 14.09.2012, 12:47
quelle
3

Versuchen Sie:

%Vor%     
silvado 14.09.2012 12:47
quelle