Ordinamento degli Array
Questa operazione è estremamente utile poiché la ricerca in un array ordinato è molto più veloce perché algoritmi efficienti come la ricerca binaria funzionano solo con array ordinati.
funzione numpy.sort()
NumPy ha una funzione integrata sort()
per ordinare gli elementi per valori in ordine crescente. Il valore restituito di questa funzione è un array NumPy ordinato. Ecco la sua sintassi generale: numpy.sort(a, axis=-1, kind=None, order=None)
, dove:
a
è un array;axis
è l'asse lungo il quale ordinare (ultimo asse (-1
) per impostazione predefinita);kind
è l'algoritmo di ordinamento da utilizzare (quicksort
per impostazione predefinita).
123import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
Metodo ndarray.sort()
Come abbiamo già menzionato, la funzione numpy.sort()
restituisce un array ordinato ma non modifica l'array originale. Se volessimo modificare l'array, dovremmo scrivere array = np.sort(array)
.
Tuttavia, NumPy fornisce un metodo .sort()
come alternativa, che ordina l'array in loco e non restituisce un nuovo array (restituisce None
, il che significa che non restituisce nulla). La sua sintassi è simile alla funzione sort()
.
Nota
Una funzione è un blocco di codice autonomo che esegue un compito specifico e può essere chiamato direttamente. Un metodo è una funzione associata a un oggetto e viene chiamata su quell'oggetto, utilizzando l'operatore
.
.
12345import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Calling the .sort() method array_1d.sort() print(array_1d)
Dopo aver chiamato il metodo .sort()
, array_1d
è stato ordinato in loco e ora contiene elementi ordinati in ordine crescente.
Ordinamento di Array 1D in Ordine Decrescente
A volte potremmo voler ordinare un array in ordine decrescente. Né il metodo .sort()
né la funzione sort()
supportano direttamente questa funzionalità. Tuttavia, possiamo semplicemente utilizzare lo slicing con step
uguale a -1
su un array ordinato:
12345import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Sorting array_1d in descending order array_1d = np.sort(array_1d)[::-1] print(array_1d)
Swipe to start coding
Stai gestendo un dataset di stipendi dei dipendenti memorizzato nell'array salaries
.
- Ordina gli stipendi in ordine decrescente utilizzando la funzione appropriata.
- Stampa i primi 3 stipendi utilizzando uno slice e specificando solo un
end
positivo.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Awesome!
Completion rate improved to 3.7
Ordinamento degli Array
Scorri per mostrare il menu
Questa operazione è estremamente utile poiché la ricerca in un array ordinato è molto più veloce perché algoritmi efficienti come la ricerca binaria funzionano solo con array ordinati.
funzione numpy.sort()
NumPy ha una funzione integrata sort()
per ordinare gli elementi per valori in ordine crescente. Il valore restituito di questa funzione è un array NumPy ordinato. Ecco la sua sintassi generale: numpy.sort(a, axis=-1, kind=None, order=None)
, dove:
a
è un array;axis
è l'asse lungo il quale ordinare (ultimo asse (-1
) per impostazione predefinita);kind
è l'algoritmo di ordinamento da utilizzare (quicksort
per impostazione predefinita).
123import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
Metodo ndarray.sort()
Come abbiamo già menzionato, la funzione numpy.sort()
restituisce un array ordinato ma non modifica l'array originale. Se volessimo modificare l'array, dovremmo scrivere array = np.sort(array)
.
Tuttavia, NumPy fornisce un metodo .sort()
come alternativa, che ordina l'array in loco e non restituisce un nuovo array (restituisce None
, il che significa che non restituisce nulla). La sua sintassi è simile alla funzione sort()
.
Nota
Una funzione è un blocco di codice autonomo che esegue un compito specifico e può essere chiamato direttamente. Un metodo è una funzione associata a un oggetto e viene chiamata su quell'oggetto, utilizzando l'operatore
.
.
12345import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Calling the .sort() method array_1d.sort() print(array_1d)
Dopo aver chiamato il metodo .sort()
, array_1d
è stato ordinato in loco e ora contiene elementi ordinati in ordine crescente.
Ordinamento di Array 1D in Ordine Decrescente
A volte potremmo voler ordinare un array in ordine decrescente. Né il metodo .sort()
né la funzione sort()
supportano direttamente questa funzionalità. Tuttavia, possiamo semplicemente utilizzare lo slicing con step
uguale a -1
su un array ordinato:
12345import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Sorting array_1d in descending order array_1d = np.sort(array_1d)[::-1] print(array_1d)
Swipe to start coding
Stai gestendo un dataset di stipendi dei dipendenti memorizzato nell'array salaries
.
- Ordina gli stipendi in ordine decrescente utilizzando la funzione appropriata.
- Stampa i primi 3 stipendi utilizzando uno slice e specificando solo un
end
positivo.
Soluzione
Grazie per i tuoi commenti!
Awesome!
Completion rate improved to 3.7single