Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich ein NumPy-Array nach einer bestimmten Spalte sortieren?

Wie kann ich ein NumPy-Array nach einer bestimmten Spalte sortieren?

DDD
Freigeben: 2024-12-25 08:56:09
Original
793 Leute haben es durchsucht

How Can I Sort a NumPy Array by a Specific Column?

Sortieren eines NumPy-Arrays nach Spalte

Das Sortieren eines NumPy-Arrays nach seiner spezifischen Spalte kann oft ein notwendiger Vorgang für die Datenmanipulation sein. Betrachten Sie zum Beispiel das Array:

a = array([[9, 2, 3],
           [4, 5, 6],
           [7, 0, 5]])
Nach dem Login kopieren

Angenommen, wir möchten die Zeilen von a basierend auf den Werten in der zweiten Spalte neu anordnen. Um dies zu erreichen, können wir die Funktion argsort() in NumPy verwenden.

a[:, 1].argsort()
Nach dem Login kopieren

Der obige Ausdruck wendet argsort() auf die zweite Spalte von a an und erzeugt ein Array von Indizes, die den sortierten Werten entsprechen. Im Einzelnen wird Folgendes zurückgegeben:

array([1, 0, 2])
Nach dem Login kopieren

Diese Indizes stellen die Reihenfolge dar, in der die Zeilen von a neu angeordnet werden sollten, um nach der zweiten Spalte in aufsteigender Reihenfolge zu sortieren. Wenn wir dies mit der Array-Indizierung kombinieren, können wir das sortierte Array erhalten:

a[a[:, 1].argsort()]
Nach dem Login kopieren

Dieser Ausdruck gibt Folgendes zurück:

array([[7, 0, 5],
       [9, 2, 3],
       [4, 5, 6]])
Nach dem Login kopieren

Wie gewünscht wurden die Zeilen von a nach der zweiten Spalte sortiert .

Das obige ist der detaillierte Inhalt vonWie kann ich ein NumPy-Array nach einer bestimmten Spalte sortieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage