Kursinhalt
Ultimatives Numpy
Ultimatives Numpy
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.
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))
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.
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])
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.
-
Erstellen Sie ein 2D-NumPy-Array namens
top_scores_subject
basierend aufexam_scores
, bei dem jede Spalte, die ein bestimmtes Fach repräsentiert, nach Ergebnissen in absteigender Reihenfolge sortiert ist. -
Erstellen Sie ein 1D-NumPy-Array namens
sorted_scores
basierend aufexam_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
Danke für Ihr Feedback!
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.
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))
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.
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])
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.
-
Erstellen Sie ein 2D-NumPy-Array namens
top_scores_subject
basierend aufexam_scores
, bei dem jede Spalte, die ein bestimmtes Fach repräsentiert, nach Ergebnissen in absteigender Reihenfolge sortiert ist. -
Erstellen Sie ein 1D-NumPy-Array namens
sorted_scores
basierend aufexam_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
Danke für Ihr Feedback!