Wie ich kann ich bedingt ändern Sie die Werte in ein numpy-array unter Berücksichtigung nan zahlen?
Mein array ist ein 2D-matrix-und es hat numpy.nan-Werte neben den negativen und positiven Werte:
>>> array
array([[ nan, nan, nan, ..., -0.04891211,
nan, nan],
[ nan, nan, nan, ..., nan,
nan, nan],
[ nan, nan, nan, ..., nan,
nan, nan],
...,
[-0.02510989, -0.02520096, -0.02669156, ..., nan,
nan, nan],
[-0.02725595, -0.02715945, -0.0286231 , ..., nan,
nan, nan],
[ nan, nan, nan, ..., nan,
nan, nan]], dtype=float32)
Und ich möchte Sie ersetzen Sie alle positiven zahlen mit einer Zahl und alle negativen zahlen mit einer anderen Zahl.
Wie kann ich ausführen, dass mit python/numpy?
(Für die Aufzeichnung, die matrix ist ein Ergebnis von geoimage, die ich durchführen wollen Klassifizierung)
- Gibt es positive zahlen in das array, die Sie nur nicht zeigen in der Vorschau
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Tatsache, dass Sie
np.nan
im array sollte keine Rolle spielen. Verwenden Sie einfach fancy indexing:Wenn Sie Sie ersetzen möchten Ihre
np.nans
:Weitere Infos über fancy indexing ein tutorial und die NumPy Dokumentation.
Versuchen: