Ordenar Arreglos 2D
Como se puede observar, al pasar simplemente nuestro arreglo 2D a la función sort(), se ordena cada arreglo 1D a lo largo del eje 1 (que es la opción predeterminada en un arreglo 2D). Establecer axis=0 ordena cada arreglo 1D a lo largo del eje 0 (cada columna).
Establecer axis=None devuelve un arreglo 1D contiguo ordenado con todos los elementos del arreglo 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))
Ordenar arreglos 2D en orden descendente
Al ordenar arreglos 2D en orden descendente a lo largo de un eje determinado, es necesario utilizar dos cortes: uno completo ([:]) y otro con un paso negativo ([::-1]). La posición del corte con el paso negativo debe corresponder al eje a lo largo del cual se está ordenando.
Al ordenar a lo largo del eje 0, solo se puede utilizar un segmento con un paso negativo, ya que ya se indexa a lo largo de este eje.
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
Dispones de un array 2D llamado exam_scores que contiene las calificaciones de cada examen de una determinada asignatura. Cada columna representa una asignatura específica y cada fila corresponde a un estudiante individual. Así, una fila específica muestra las calificaciones de ese estudiante en cada examen.
- Crear un array 2D de NumPy llamado
top_scores_subjectbasado enexam_scores, donde cada columna, que representa una asignatura, esté ordenada por calificaciones en orden descendente. - Crear un array 1D de NumPy llamado
sorted_scoresbasado enexam_scores, que contenga todas las calificaciones ordenadas en orden ascendente.
De este modo, puedes identificar fácilmente las calificaciones más altas de cada examen y las más bajas entre todos los exámenes.
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 3.7
Ordenar Arreglos 2D
Desliza para mostrar el menú
Como se puede observar, al pasar simplemente nuestro arreglo 2D a la función sort(), se ordena cada arreglo 1D a lo largo del eje 1 (que es la opción predeterminada en un arreglo 2D). Establecer axis=0 ordena cada arreglo 1D a lo largo del eje 0 (cada columna).
Establecer axis=None devuelve un arreglo 1D contiguo ordenado con todos los elementos del arreglo 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))
Ordenar arreglos 2D en orden descendente
Al ordenar arreglos 2D en orden descendente a lo largo de un eje determinado, es necesario utilizar dos cortes: uno completo ([:]) y otro con un paso negativo ([::-1]). La posición del corte con el paso negativo debe corresponder al eje a lo largo del cual se está ordenando.
Al ordenar a lo largo del eje 0, solo se puede utilizar un segmento con un paso negativo, ya que ya se indexa a lo largo de este eje.
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
Dispones de un array 2D llamado exam_scores que contiene las calificaciones de cada examen de una determinada asignatura. Cada columna representa una asignatura específica y cada fila corresponde a un estudiante individual. Así, una fila específica muestra las calificaciones de ese estudiante en cada examen.
- Crear un array 2D de NumPy llamado
top_scores_subjectbasado enexam_scores, donde cada columna, que representa una asignatura, esté ordenada por calificaciones en orden descendente. - Crear un array 1D de NumPy llamado
sorted_scoresbasado enexam_scores, que contenga todas las calificaciones ordenadas en orden ascendente.
De este modo, puedes identificar fácilmente las calificaciones más altas de cada examen y las más bajas entre todos los exámenes.
Solución
¡Gracias por tus comentarios!
single