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
Genial!
Completion tasa mejorada a 3.85
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