Een numpy-array op kolom sorteren (met voorbeelden)
U kunt de volgende methoden gebruiken om de rijen van een NumPy-array te sorteren op kolomwaarden:
Methode 1: Sorteer op kolomwaarden in oplopende volgorde
x_sorted_asc = x[x[:, 1]. argsort ()]
Methode 2: Sorteren op aflopende kolomwaarden
x_sorted_desc = x[x[:, 1]. argsort ()[::-1]]
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.
Voorbeeld 1: Sorteer de Numpy-array op kolomwaarden in oplopende volgorde
Stel dat we de volgende NumPy-array hebben:
import numpy as np #create array x = np. array ([14, 12, 8, 10, 5, 7, 11, 9, 2]). reshape (3,3) #view array print (x) [[14 12 8] [10 5 7] [11 9 2]]
We kunnen de volgende code gebruiken om de rijen van de NumPy-tabel in oplopende volgorde te sorteren op basis van de waarden in de tweede kolom:
#define new matrix with rows sorted in ascending order by values in second column
x_sorted_asc = x[x[:, 1]. argsort ()]
#view sorted matrix
print (x_sorted_asc)
[[10 5 7]
[11 9 2]
[14 12 8]]
Merk op dat de rijen nu in oplopende volgorde (van klein naar groot) worden gesorteerd op basis van de waarden in de tweede kolom.
Voorbeeld 2: Sorteer de Numpy-array op aflopende kolomwaarden
Stel dat we de volgende NumPy-array hebben:
import numpy as np #create array x = np. array ([14, 12, 8, 10, 5, 7, 11, 9, 2]). reshape (3,3) #view array print (x) [[14 12 8] [10 5 7] [11 9 2]]
We kunnen de volgende code gebruiken om de rijen van de NumPy-tabel in aflopende volgorde te sorteren op basis van de waarden in de tweede kolom:
#define new matrix with rows sorted in descending order by values in second column
x_sorted_desc = x[x[:, 1]. argsort ()[::-1]]
#view sorted matrix
print (x_sorted_desc)
[[14 12 8]
[11 9 2]
[10 5 7]]
Merk op dat de rijen nu in aflopende volgorde (van groot naar klein) worden gesorteerd op basis van de waarden in de tweede kolom.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in Python uitvoert:
Hoe de waarde-index te vinden in de NumPy-array
Hoe u een specifieke kolom uit een NumPy-array kunt halen
Hoe u een kolom aan een NumPy-array toevoegt