HOWTO · NumPy

NumPy Sostituisci valori

Esistono tre metodi principali che possono essere utilizzati per sostituire i valori all'interno di un array NumPy in Python, la funzione numpy.clip(), la funzione numpy.minimum() e il metodo di indicizzazione.

Questo tutorial introdurrà come sostituire i valori all’interno di un array NumPy in Python.

NumPy Sostituisci i valori con la funzione numpy.clip()

Se abbiamo bisogno di sostituire tutti i valori maggiori di una certa soglia in un array NumPy, possiamo usare la funzione numpy.clip(). Possiamo specificare i limiti superiore e inferiore di un array utilizzando la funzione numpy.clip(). La funzione numpy.clip() restituisce un array in cui gli elementi inferiori al limite specificato vengono sostituiti con il limite più basso. Gli elementi maggiori del limite specificato vengono sostituiti con il limite massimo. Il seguente esempio di codice ci mostra come sostituire i valori all’interno di un array NumPy con la funzione numpy.clip().

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)

Produzione:

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

Abbiamo sostituito i valori maggiori di 5 all’interno dell’array NumPy array con la funzione np.clip() nel codice sopra. Per prima cosa abbiamo creato un array NumPy con la funzione np.array(). Abbiamo quindi ritagliato l’array specificando un limite da 0 a 5 all’interno della funzione np.clip() e salvato il risultato all’interno dell’array result.

NumPy Sostituisci valori con le funzioni numpy.minimum() e numpy.maximum()

Possiamo anche usare le funzioni numpy.minimum() e numpy.maximum() per sostituire i valori in un array al di fuori del nostro limite specificato. La funzione numpy.maximum() viene utilizzata per sostituire i valori inferiori al limite inferiore con il limite inferiore. E la funzione numpy.minimum() viene utilizzata per sostituire i valori maggiori del limite superiore con il limite superiore. La funzione numpy.maximum() accetta l’array e il valore più basso possibile come parametri di input. La funzione numpy.minimum() accetta l’array e il maggior valore possibile come parametri di input. Vedere il seguente esempio di codice.

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)

Produzione:

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

Abbiamo sostituito i valori maggiori di 5 con 5 utilizzando la funzione np.minimum() e i valori minori di 0 con 0 utilizzando la funzione np.maximum(). Abbiamo memorizzato il risultato di queste operazioni all’interno dell’array result2.

NumPy Sostituisci i valori con il metodo di indicizzazione dell’array in Python

Il modo più semplice per raggiungere lo stesso obiettivo dei due metodi precedenti è utilizzare l’indicizzazione dell’array in Python. Possiamo facilmente sostituire i valori maggiori o minori di una certa soglia con il metodo di indicizzazione dell’array in NumPy. Invece di creare un nuovo array come i due metodi precedenti, questo metodo ha modificato il contenuto del nostro array originale.

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)

Produzione:

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

Abbiamo sostituito tutti i valori all’interno dell’array maggiori di 5 con 5 usando array[array > 5] = 5 in Python.