Das Sortieren eines Arrays ist ein sehr wichtiger Schritt bei der Datenanalyse, da es beim Ordnen der Daten hilft und die Suche und Bereinigung erleichtert.
In diesem Tutorial werden wir es lernen So sortieren Sie ein Array in NumPy . Sie können ein Array in NumPy sortieren:
- Verwendung der Funktion np.sort()
- Inline-Sortierung
- Sortieren nach verschiedenen Achsen
- Verwendung der Funktion np.argsort()
- Verwendung der Funktion np.lexsort()
Verwenden der Funktion sort()
Die Methode sort() sortiert das Element einer bestimmten Datenstruktur (hier Array). Rufen Sie die Sortierfunktion mit dem Array-Objekt auf, um die Elemente zu sortieren.
Es gibt zwei Fälle, in denen ein Array mit der Methode sort() sortiert wird:
- Sortieren Sie das NumPy-Array an Ort und Stelle
- Sortieren Sie das NumPy-Array entlang der Achsen
Wir werden beide Methoden anhand eines folgenden Beispiels behandeln:
Array vor Ort sortieren
Das Sortieren eines Arrays an Ort und Stelle bedeutet, dass die ursprünglichen Array-Elemente direkt sortiert werden.
Es erstellt keine neue Array-Kopie und ist sehr speichereffizient.
Reverse-String in Java
Beispiel
Verwenden Sie die Methode sort(), um Elemente im NumPy-Array direkt zu sortieren.
Python3
# importing libraries> import> numpy as np> > a>=> np.array([>12>,>15>,>10>,>1>])> print>(>'Array before sorting'>,a)> a.sort()> print>(>'Array after sorting'>,a)> |
>
>
Ausgabe:
Array before sorting [12 15 10 1] Array after sorting [ 1 10 12 15]>
Sortieren Sie das Array entlang verschiedener Achsen
Diese Methode erstellt eine sortierte Kopie des angegebenen NumPy-Arrays.
Es wird meist in einem mehrdimensionalen Array verwendet, wenn Sie entlang einer bestimmten Dimension sortieren möchten.
Beispiel
Verwenden der Methode sort() für Elemente im NumPy-Array entlang der Achse
Python3
# importing libraries> import> numpy as np> # sort along the first axis> a>=> np.array([[>12>,>15>], [>10>,>1>]])> arr1>=> np.sort(a, axis>=> 0>)> print> (>'Along first axis :
'>, arr1)> # sort along the last axis> a>=> np.array([[>10>,>15>], [>12>,>1>]])> arr2>=> np.sort(a, axis>=> ->1>)> print> (>'
Along first axis :
'>, arr2)> a>=> np.array([[>12>,>15>], [>10>,>1>]])> arr1>=> np.sort(a, axis>=> None>)> print> (>'
Along none axis :
'>, arr1)> |
Netzwerktopologien
>
>
Ausgabe:
Along first axis : [[10 1] [12 15]]Along first axis : [[10 15] [ 1 12]]Along none axis : [ 1 10 12 15]>
Verwendung von argsort()
argsort()-Methode ist eine indirekte Möglichkeit, das NumPy-Array entlang einer bestimmten Achse zu sortieren.
Es gibt eine zurück Reihe von Indizes das würde das ursprüngliche Array in aufsteigender Reihenfolge sortieren.
Beispiel
Verwenden von argsort() zum Sortieren von Elementen im NumPy-Array
Python3
in SQL gegossen
import> numpy as np> > # Numpy array created> a>=> np.array([>9>,>3>,>1>,>7>,>4>,>3>,>6>])> > # unsorted array print> print>(>'Original array:
'>, a)> > # Sort array indices> b>=> np.argsort(a)> print>(>'Sorted indices of original array->'>, b)> > # To get sorted array using sorted indices> # c is temp array created of same len as of b> c>=> np.zeros(>len>(b), dtype>=> int>)> for> i>in> range>(>0>,>len>(b)):> >c[i]>=> a[b[i]]> print>(>'Sorted array->'>, c)> |
>
>
Ausgabe:
Original array: [9 3 1 7 4 3 6] Sorted indices of original array->[2 1 5 4 6 3 0] Sortiertes Array-> [1 3 3 4 6 7 9]>
Tastenfolge verwenden
Das Sortieren eines Arrays mithilfe einer Schlüsselfolge ermöglicht es uns, ein Array anhand mehrerer Kriterien zu sortieren.
Sie können diese Methode mit der Funktion np.lexsort() verwenden. Die Funktion lexsort() gibt ein Array von Indizes zurück, das das ursprüngliche Array sortieren würde.
Beispiel
Erhalten Sie eine stabile Sortierung mithilfe einer Schlüsselfolge.
Python3
import> numpy as np> > # Numpy array created> # First column> a>=> np.array([>9>,>3>,>1>,>3>,>4>,>3>,>6>])> > # Second column> b>=> np.array([>4>,>6>,>9>,>2>,>1>,>8>,>7>])> print>(>'column a, column b'>)> for> (i, j)>in> zip>(a, b):> >print>(i,>' '>, j)> > # Sort by a then by b> ind>=> np.lexsort((b, a))> print>(>'Sorted indices->'>, ind)> |
>
>
SQL-Server-Pivot
Ausgabe:
column a, column b 9 4 3 6 1 9 3 2 4 1 3 8 6 7 Sorted indices->[2 3 1 5 4 6 0]>
Überprüfen Sie auch: Sortieren, Suchen und Zählen in NumPy
Abschluss
Das Sortieren des NumPy-Arrays erleichtert das Auffinden doppelter, maximaler und minimaler Elemente. Es handelt sich um einen wesentlichen Vorgang der Datenmanipulation, der die Arbeit mit Daten erleichtert.
In diesem Tutorial haben wir drei Methoden zum Sortieren eines Arrays in NumPy behandelt, nämlich sort(), argsort() und lexsort(). Alle diese Methoden bieten unterschiedliche Funktionalitäten zum Sortieren von ndarray in NumPy. Wir haben die Methoden in einfachen Worten anhand von Beispielen erklärt, um Ihnen ein umfassendes Verständnis des Themas zu vermitteln.