In vielen Fällen, in denen die Größe des Arrays zu groß ist, dauert es zu lange, die maximale Anzahl an Elementen daraus zu finden. Zu diesem Zweck stellt das Numpy-Modul von Python eine Funktion namens bereit numpy.argmax() . Diese Funktion gibt Indizes der Maximalwerte zurück, die zusammen mit der angegebenen Achse zurückgegeben werden.
Syntax:
numpy.argmax(a, axis=None, out=None)
Parameter
x: array_like
Dieser Parameter definiert das Quellarray, dessen Maximalwert wir wissen möchten.
Was ist Java-Hashmap?
Achse: int (optional)
Dieser Parameter definiert die Achse, entlang derer der Index vorhanden ist, und befindet sich standardmäßig im abgeflachten Array.
out: Array (optional)
Minimal Maximal
Dieser Parameter definiert das Ndarray, in das das Ergebnis eingefügt wird. Dieses wird von der gleichen Art und Form sein, die für die Speicherung des Ergebnisses geeignet ist
Kehrt zurück
Dieser Parameter definiert ein Ndarray, das die Indizes des Arrays enthält. Die Form ist die gleiche wie x.Form wobei die Bemaßung entlang der Achse entfernt wurde.
Beispiel 1:
Import numpy as np x = np.arange(20).reshape(4,5) + 7 x y=np.argmax(a) y
Ausgabe:
array([[ 7, 8, 9, 10, 11], [12, 13, 14, 15, 16], [17, 18, 19, 20, 21], [22, 23, 24, 25, 26]]) 19
Im obigen Code
- Wir haben numpy mit dem Aliasnamen np importiert.
- Wir haben ein Array erstellt 'X' verwenden np.arange() Funktion mit der Form von vier Zeilen und fünf Spalten.
- Wir haben auch 7 in jedem Element des Arrays hinzugefügt.
- Wir haben die Variable deklariert 'Und' und den zurückgegebenen Wert von zugewiesen np.argmax() Funktion.
- Wir haben das Array übergeben 'X' in der Funktion.
- Zuletzt haben wir versucht, den Wert von auszudrucken 'Und' .
In der Ausgabe werden die Indizes des maximalen Elements im Array angezeigt.
Beispiel 2:
Import numpy as np x = np.arange(20).reshape(4,5) + 7 y=np.argmax(x, axis=0) z=np.argmax(x, axis=1) y z
Ausgabe:
array([3, 3, 3, 3, 3], dtype=int64) array([4, 4, 4, 4], dtype=int64)
Beispiel 3:
Import numpy as np x = np.arange(20).reshape(4,5) + 7 indices = np.unravel_index(np.argmax(x, axis=None), x.shape) indices x[indices]
Ausgabe:
(3, 4) 26
Beispiel 4:
import numpy as np a = np.array([[5,2,1], [3,7,9],[0, 4, 6]]) index_arr = np.argmax(a, axis=-1) index_arr # Same as np.max(a, axis=-1, keepdims=True) result = np.take_along_axis(a, np.expand_dims(index_arr, axis=-1), axis=-1) result1 # Same as np.max(a, axis=-1) result = np.take_along_axis(a, np.expand_dims(index_arr, axis=-1), axis=-1).squeeze(axis=-1) result2
Ausgabe:
Word-Symbolleiste für den Schnellzugriff
array([[0], [2], [2]]) array([5, 9, 6])
Im obigen Code
- Wir haben numpy mit dem Aliasnamen np importiert.
- Wir haben ein mehrdimensionales Array erstellt 'A ' verwenden np.array() Funktion.
- Wir haben die Variable deklariert 'index_arr' und den zurückgegebenen Wert von zugewiesen np.argmax() Funktion.
- Wir haben das Array übergeben 'A' und die Achse in der Funktion.
- Wir haben versucht, den Wert von auszudrucken 'index_arr' .
- Am Ende haben wir versucht, den Maximalwert des Arrays mithilfe von zwei verschiedenen Methoden abzurufen, die recht ähnlich sind np.argmax() .
In der Ausgabe werden Indizes der maximalen Elemente im Array und die Werte angezeigt, die in diesen Indizes vorhanden sind.