single
2D-Arrays Sorteren
Veeg om het menu te tonen
Zoals je kunt zien, sorteert het eenvoudigweg doorgeven van onze 2D-array aan de functie sort() elke 1D-array langs as 1 (dit is de standaardoptie in een 2D-array). Door axis=0 in te stellen, wordt elke 1D-array gesorteerd langs as 0 (elke kolom).
Door axis=None in te stellen, wordt een aaneengesloten gesorteerde 1D-array van alle elementen van de 2D-array geretourneerd.
12345678import 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))
2D-arrays sorteren in aflopende volgorde
Bij het sorteren van 2D-arrays in aflopende volgorde langs een bepaalde as, moet je twee slices gebruiken: één volledige slice ([:]) en een andere met een negatieve stap ([::-1]). De positie van de slice met de negatieve stap moet overeenkomen met de as waarlangs je sorteert.
Bij het sorteren langs as 0 kun je alleen een slice met een negatieve stap gebruiken, omdat deze al langs deze as indexeert.
12345678import 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])
Veeg om te beginnen met coderen
Je hebt een 2D-array genaamd exam_scores met de scores voor elk examen van een bepaald vak. Elke kolom vertegenwoordigt een specifiek vak, en elke rij vertegenwoordigt een individuele student. Een specifieke rij toont dus de scores van die student voor elk examen.
- Maak een 2D NumPy-array genaamd
top_scores_subjectop basis vanexam_scores, waarbij elke kolom, die een bepaald vak vertegenwoordigt, wordt gesorteerd op scores in aflopende volgorde. - Maak een 1D NumPy-array genaamd
sorted_scoresop basis vanexam_scores, die alle scores bevat gesorteerd in oplopende volgorde.
Hierdoor kun je eenvoudig de hoogste scores per examen en de laagste scores over alle examens identificeren.
Oplossing
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.