HOWTO · NumPy

NumPy Werte ersetzen

Es gibt drei Hauptmethoden, die verwendet werden können, um Werte in einem NumPy-Array in Python zu ersetzen, die numpy.clip()-Funktion, die numpy.minimum()-Funktion und die Indexierungsmethode.

In diesem Tutorial erfahren Sie, wie Sie Werte in einem NumPy-Array in Python ersetzen.

NumPy Werte durch die Funktion numpy.clip() ersetzen

Wenn wir alle größeren Werte als einen bestimmten Schwellenwert in einem NumPy-Array ersetzen müssen, können wir die Funktion numpy.clip() verwenden. Mit der Funktion numpy.clip() können wir die obere und untere Grenze eines Arrays festlegen. Die Funktion numpy.clip() gibt ein Array zurück, in dem die Elemente, die kleiner als der angegebene Grenzwert sind, durch den niedrigsten Grenzwert ersetzt werden. Die Elemente, die größer als der angegebene Grenzwert sind, werden durch den größten Grenzwert ersetzt. Das folgende Codebeispiel zeigt uns, wie man Werte innerhalb eines NumPy-Arrays durch die Funktion numpy.clip() ersetzt.

import numpy as np

array = np.array([1, 2, 3, 4, 5, 5, 6, 7, 8, 8, 9, 9])

result = np.clip(array, 0, 5)
print(result)

Ausgabe:

[1 2 3 4 5 5 5 5 5 5 5 5]

Wir haben die Werte größer als 5 im NumPy-Array array durch die Funktion np.clip() im obigen Code ersetzt. Wir haben zuerst ein NumPy-Array mit der Funktion np.array() erstellt. Wir haben dann das array beschnitten, indem wir innerhalb der Funktion np.clip() eine Grenze von 0 bis 5 festgelegt haben und das Ergebnis im result-Array gespeichert.

NumPy Werte durch die Funktionen numpy.minimum() und numpy.maximum() ersetzen

Wir können auch die Funktionen numpy.minimum() und numpy.maximum() verwenden, um Werte in einem Array außerhalb unseres angegebenen Limits zu ersetzen. Mit der Funktion numpy.maximum() werden die Werte kleiner als die untere Grenze durch die untere Grenze ersetzt. Und die Funktion numpy.minimum() wird verwendet, um Werte, die größer als die Obergrenze sind, durch die Obergrenze zu ersetzen. Die Funktion numpy.maximum() nimmt als Eingabeparameter das Array und den kleinstmöglichen Wert. Die Funktion numpy.minimum() nimmt als Eingabeparameter das Array und den größtmöglichen Wert. Siehe das folgende Codebeispiel.

import numpy as np

array = np.array([1, 2, 3, 4, 5, 5, 6, 7, 8, 8, 9, 9])

result1 = np.minimum(array, 5)

result2 = np.maximum(result1, 0)
print(result2)

Ausgabe:

[1 2 3 4 5 5 5 5 5 5 5 5]

Wir haben die Werte größer 5 durch 5 mit der Funktion np.minimum() und die Werte kleiner 0 durch 0 mit der Funktion np.maximum() ersetzt. Das Ergebnis dieser Operationen haben wir im Array result2 gespeichert.

NumPy Werte durch die Array-Indizierungsmethode in Python ersetzen

Der einfachste Weg, das gleiche Ziel wie bei den beiden vorherigen Methoden zu erreichen, besteht darin, die Array-Indizierung in Python zu verwenden. Wir können Werte, die größer oder kleiner als ein bestimmter Schwellenwert sind, problemlos mit der Array-Indizierungsmethode in NumPy ersetzen. Anstatt wie die beiden vorherigen Methoden ein neues Array zu erstellen, änderte diese Methode den Inhalt unseres ursprünglichen Arrays.

import numpy as np

array = np.array([1, 2, 3, 4, 5, 5, 6, 7, 8, 8, 9, 9])

array[array > 5] = 5
print(array)

Ausgabe:

[1 2 3 4 5 5 5 5 5 5 5 5]

Wir haben alle Werte innerhalb des array grösser als 5 durch 5 ersetzt, indem wir array[array > 5] = 5 in Python verwendet haben.