Heim >Backend-Entwicklung >Python-Tutorial >Wie finde ich lokale Maxima und Minima in 1D-Numpy-Arrays?
Lokale Maxima und Minima in 1D-Arrays mit Numpy finden
Das Identifizieren lokaler Maxima und Minima in 1D-Numpy-Arrays ist eine häufige Aufgabe in verschiedenen Anwendungen . Während die Überprüfung benachbarter Elemente ein intuitiver Ansatz ist, bietet Numpy eine umfassendere und zuverlässigere Lösung.
Numpys Argrelextrema-Funktion
In SciPy 0.11 und höher kann die Argrelextrema-Funktion effizient arbeiten Finden Sie sowohl lokale Maxima als auch Minima in einem 1D-Numpy-Array. Es werden zwei Argumente benötigt:
Verwendung:
Um lokale Maxima zu finden, verwenden Sie:
argrelextrema(x, np.greater)
Um lokale Minima zu finden, verwenden Sie:
argrelextrema(x, np.less)
Ausgabe
Die argrelextrema-Funktion gibt ein Tupel zurück, das ein eindimensionales Array von Indizes enthält, die den Extrema entsprechen. Diese Indizes können verwendet werden, um auf die Werte der lokalen Maxima oder Minima zuzugreifen.
Beispiel:
Betrachten Sie das folgende Numpy-Array:
x = np.random.random(12)
Ermitteln der Indizes lokaler Maxima und Minima:
max_indices = argrelextrema(x, np.greater)[0] min_indices = argrelextrema(x, np.less)[0]
Abrufen der tatsächlichen Werte:
max_values = x[max_indices] min_values = x[min_indices]
Mit der Argrelextrema-Funktion von Numpy können Sie lokale Maxima und Minima in 1D-Numpy genau identifizieren Arrays, was diese häufige Aufgabe vereinfacht.
Das obige ist der detaillierte Inhalt vonWie finde ich lokale Maxima und Minima in 1D-Numpy-Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!