Ordinamento di Array 2D
Come puoi vedere, passando semplicemente il nostro array 2D alla funzione sort(), viene ordinato ogni array 1D lungo l'asse 1 (che è l'opzione predefinita in un array 2D). Impostando axis=0 si ordina ogni array 1D lungo l'asse 0 (ogni colonna).
Impostando axis=None si ottiene un array 1D contiguo ordinato contenente tutti gli elementi dell'array 2D.
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))
Ordinamento di array 2D in ordine decrescente
Quando si ordinano array 2D in ordine decrescente lungo un determinato asse, è necessario utilizzare due slice: uno completo ([:]) e un altro con passo negativo ([::-1]). La posizione dello slice con passo negativo deve corrispondere all'asse lungo il quale si sta ordinando.
Quando si ordina lungo l'asse 0, è possibile utilizzare solo uno slice con passo negativo, poiché già indicizza lungo questo asse.
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])
Swipe to start coding
Hai un array 2D chiamato exam_scores che contiene i punteggi di ogni esame per una determinata materia. Ogni colonna rappresenta una specifica materia, e ogni riga rappresenta un singolo studente. Pertanto, una riga specifica mostra i punteggi di quello studente per ciascun esame.
- Crea un array 2D NumPy chiamato
top_scores_subjectbasato suexam_scoresin cui ogni colonna, che rappresenta una determinata materia, è ordinata per punteggi in ordine decrescente. - Crea un array 1D NumPy chiamato
sorted_scoresbasato suexam_scores, contenente tutti i punteggi ordinati in ordine crescente.
In questo modo, puoi identificare facilmente i punteggi più alti per ogni esame e i punteggi più bassi tra tutti gli esami.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Fantastico!
Completion tasso migliorato a 3.85
Ordinamento di Array 2D
Scorri per mostrare il menu
Come puoi vedere, passando semplicemente il nostro array 2D alla funzione sort(), viene ordinato ogni array 1D lungo l'asse 1 (che è l'opzione predefinita in un array 2D). Impostando axis=0 si ordina ogni array 1D lungo l'asse 0 (ogni colonna).
Impostando axis=None si ottiene un array 1D contiguo ordinato contenente tutti gli elementi dell'array 2D.
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))
Ordinamento di array 2D in ordine decrescente
Quando si ordinano array 2D in ordine decrescente lungo un determinato asse, è necessario utilizzare due slice: uno completo ([:]) e un altro con passo negativo ([::-1]). La posizione dello slice con passo negativo deve corrispondere all'asse lungo il quale si sta ordinando.
Quando si ordina lungo l'asse 0, è possibile utilizzare solo uno slice con passo negativo, poiché già indicizza lungo questo asse.
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])
Swipe to start coding
Hai un array 2D chiamato exam_scores che contiene i punteggi di ogni esame per una determinata materia. Ogni colonna rappresenta una specifica materia, e ogni riga rappresenta un singolo studente. Pertanto, una riga specifica mostra i punteggi di quello studente per ciascun esame.
- Crea un array 2D NumPy chiamato
top_scores_subjectbasato suexam_scoresin cui ogni colonna, che rappresenta una determinata materia, è ordinata per punteggi in ordine decrescente. - Crea un array 1D NumPy chiamato
sorted_scoresbasato suexam_scores, contenente tutti i punteggi ordinati in ordine crescente.
In questo modo, puoi identificare facilmente i punteggi più alti per ogni esame e i punteggi più bassi tra tutti gli esami.
Soluzione
Grazie per i tuoi commenti!
single