Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Sortieren von 2D-Arrays | Häufig Verwendete NumPy-Funktionen
Ultimatives Numpy
course content

Kursinhalt

Ultimatives Numpy

Ultimatives Numpy

1. NumPy-Grundlagen
2. Indexierung und Slicing
3. Häufig Verwendete NumPy-Funktionen
4. Mathematik mit NumPy

book
Sortieren von 2D-Arrays

Wie Sie sehen können, sortiert das einfache Übergeben unseres 2D-Arrays an die Funktion sort() jedes 1D-Array entlang der Achse 1 (was die Standardoption in einem 2D-Array ist). Das Setzen von axis=0 sortiert jedes 1D-Array entlang der Achse 0 (jede Spalte).

Das Setzen von axis=None gibt ein zusammenhängend sortiertes 1D-Array aller Elemente des 2D-Arrays zurück.

12345678
import numpy as np array_2d = np.array([[2, 9, 3], [1, 6, 4], [5, 7, 8]]) # Sorting a 2D array along axis 1 print(np.sort(array_2d)) # Sorting a 2D array along axis 0 print(np.sort(array_2d, axis=0)) # Creating a 1D sorted array out of the elements of array_2d print(np.sort(array_2d, axis=None))
copy

Sortieren von 2D-Arrays in absteigender Reihenfolge

Beim Sortieren von 2D-Arrays in absteigender Reihenfolge entlang einer gegebenen Achse müssen Sie zwei Slices verwenden: ein vollständiges Slice ([:]) und ein weiteres mit einem negativen Schritt ([::-1]). Die Position des Slices mit dem negativen Schritt sollte der Achse entsprechen, entlang der Sie sortieren.

Hinweis

Beim Sortieren entlang der Achse 0 können Sie nur ein Slice mit einem negativen Schritt verwenden, da es bereits entlang dieser Achse indiziert.

12345678
import numpy as np array_2d = np.array([[2, 9, 3], [1, 6, 4], [5, 7, 8]]) # Sorting a 2D array along axis 1 in descending order print(np.sort(array_2d)[:, ::-1]) # Sorting a 2D array along axis 0 in descending order print(np.sort(array_2d, axis=0)[::-1]) # Creating a 1D sorted array out of the elements of array_2d in descending order print(np.sort(array_2d, axis=None)[::-1])
copy
Aufgabe

Swipe to start coding

Sie haben ein 2D-Array namens exam_scores, das die Ergebnisse für jede Prüfung eines bestimmten Fachs enthält. Jede Spalte repräsentiert ein spezifisches Fach, und jede Zeile repräsentiert einen einzelnen Schüler. Somit zeigt eine bestimmte Zeile die Ergebnisse dieses Schülers für jede Prüfung.

  1. Erstellen Sie ein 2D-NumPy-Array namens top_scores_subject basierend auf exam_scores, bei dem jede Spalte, die ein bestimmtes Fach repräsentiert, nach Ergebnissen in absteigender Reihenfolge sortiert ist.

  2. Erstellen Sie ein 1D-NumPy-Array namens sorted_scores basierend auf exam_scores, das alle Ergebnisse in aufsteigender Reihenfolge enthält.

Auf diese Weise können Sie leicht die höchsten Ergebnisse für jede Prüfung und die niedrigsten Ergebnisse über alle Prüfungen hinweg identifizieren.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 2
toggle bottom row

book
Sortieren von 2D-Arrays

Wie Sie sehen können, sortiert das einfache Übergeben unseres 2D-Arrays an die Funktion sort() jedes 1D-Array entlang der Achse 1 (was die Standardoption in einem 2D-Array ist). Das Setzen von axis=0 sortiert jedes 1D-Array entlang der Achse 0 (jede Spalte).

Das Setzen von axis=None gibt ein zusammenhängend sortiertes 1D-Array aller Elemente des 2D-Arrays zurück.

12345678
import numpy as np array_2d = np.array([[2, 9, 3], [1, 6, 4], [5, 7, 8]]) # Sorting a 2D array along axis 1 print(np.sort(array_2d)) # Sorting a 2D array along axis 0 print(np.sort(array_2d, axis=0)) # Creating a 1D sorted array out of the elements of array_2d print(np.sort(array_2d, axis=None))
copy

Sortieren von 2D-Arrays in absteigender Reihenfolge

Beim Sortieren von 2D-Arrays in absteigender Reihenfolge entlang einer gegebenen Achse müssen Sie zwei Slices verwenden: ein vollständiges Slice ([:]) und ein weiteres mit einem negativen Schritt ([::-1]). Die Position des Slices mit dem negativen Schritt sollte der Achse entsprechen, entlang der Sie sortieren.

Hinweis

Beim Sortieren entlang der Achse 0 können Sie nur ein Slice mit einem negativen Schritt verwenden, da es bereits entlang dieser Achse indiziert.

12345678
import numpy as np array_2d = np.array([[2, 9, 3], [1, 6, 4], [5, 7, 8]]) # Sorting a 2D array along axis 1 in descending order print(np.sort(array_2d)[:, ::-1]) # Sorting a 2D array along axis 0 in descending order print(np.sort(array_2d, axis=0)[::-1]) # Creating a 1D sorted array out of the elements of array_2d in descending order print(np.sort(array_2d, axis=None)[::-1])
copy
Aufgabe

Swipe to start coding

Sie haben ein 2D-Array namens exam_scores, das die Ergebnisse für jede Prüfung eines bestimmten Fachs enthält. Jede Spalte repräsentiert ein spezifisches Fach, und jede Zeile repräsentiert einen einzelnen Schüler. Somit zeigt eine bestimmte Zeile die Ergebnisse dieses Schülers für jede Prüfung.

  1. Erstellen Sie ein 2D-NumPy-Array namens top_scores_subject basierend auf exam_scores, bei dem jede Spalte, die ein bestimmtes Fach repräsentiert, nach Ergebnissen in absteigender Reihenfolge sortiert ist.

  2. Erstellen Sie ein 1D-NumPy-Array namens sorted_scores basierend auf exam_scores, das alle Ergebnisse in aufsteigender Reihenfolge enthält.

Auf diese Weise können Sie leicht die höchsten Ergebnisse für jede Prüfung und die niedrigsten Ergebnisse über alle Prüfungen hinweg identifizieren.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 2
Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
We're sorry to hear that something went wrong. What happened?
some-alt