In molti casi, quando la dimensione dell'array è troppo grande, è necessario troppo tempo per trovare da essi il massimo degli elementi. A questo scopo, il modulo numpy di Python fornisce una funzione chiamata numpy.argmax() . Questa funzione restituisce gli indici dei valori massimi restituiti insieme all'asse specificato.
Sintassi:
numpy.argmax(a, axis=None, out=None)
Parametri
x: tipo_array
Questo parametro definisce l'array di origine di cui vogliamo conoscere il valore massimo.
for loop java
asse: int(facoltativo)
Questo parametro definisce l'asse lungo il quale è presente l'indice e, per impostazione predefinita, si trova nell'array appiattito.
out: array (opzionale)
Questo parametro definisce il ndarray in cui verrà inserito il risultato. Questo sarà dello stesso tipo e forma, appropriato per memorizzare il risultato
ritorna
Questo parametro definisce un ndarray, che contiene gli indici dell'array. La forma è la stessa di x.forma con la dimensione lungo l'asse rimossa.
linux quale comando
Esempio 1:
Import numpy as np x = np.arange(20).reshape(4,5) + 7 x y=np.argmax(a) y
Produzione:
array([[ 7, 8, 9, 10, 11], [12, 13, 14, 15, 16], [17, 18, 19, 20, 21], [22, 23, 24, 25, 26]]) 19
Nel codice sopra
- Abbiamo importato Numpy con il nome alias np.
- Abbiamo creato un array 'X' utilizzando np.arancio() funzione con la forma di quattro righe e cinque colonne.
- Abbiamo aggiunto 7 anche in ciascun elemento dell'array.
- Abbiamo dichiarato la variabile 'E' e assegnato il valore restituito di np.argmax() funzione.
- Abbiamo superato l'array 'X' nella funzione.
- Infine, abbiamo provato a stampare il valore di 'E' .
Nell'output mostra gli indici dell'elemento massimo nell'array.
Esempio 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
Produzione:
json dall'oggetto Java
array([3, 3, 3, 3, 3], dtype=int64) array([4, 4, 4, 4], dtype=int64)
Esempio 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]
Produzione:
(3, 4) 26
Esempio 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
Produzione:
array([[0], [2], [2]]) array([5, 9, 6])
Nel codice sopra
- Abbiamo importato Numpy con il nome alias np.
- Abbiamo creato un array multidimensionale 'UN 'usando np.array() funzione.
- Abbiamo dichiarato la variabile 'indice_arr' e assegnato il valore restituito di np.argmax() funzione.
- Abbiamo superato l'array 'UN' e l'asse nella funzione.
- Abbiamo provato a stampare il valore di 'indice_arr' .
- Alla fine, abbiamo provato a recuperare il valore massimo dell'array con l'aiuto di due modi diversi, abbastanza simili a np.argmax() .
Nell'output mostra gli indici degli elementi massimi nell'array e i valori presenti su tali indici.