Ordenando Arrays 2D
Como pode ser observado, ao passar simplesmente nosso array 2D para a função sort(), cada array 1D é ordenado ao longo do eixo 1 (que é a opção padrão em um array 2D). Definindo axis=0, cada array 1D é ordenado ao longo do eixo 0 (cada coluna).
Definindo axis=None, é retornado um array 1D contínuo e ordenado com todos os elementos do 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))
Ordenando Arrays 2D em Ordem Decrescente
Ao ordenar arrays 2D em ordem decrescente ao longo de um determinado eixo, é necessário utilizar dois slices: um slice completo ([:]) e outro com passo negativo ([::-1]). A posição do slice com passo negativo deve corresponder ao eixo ao longo do qual está sendo feita a ordenação.
Ao classificar ao longo do eixo 0, é possível utilizar apenas um slice com passo negativo, pois ele já faz a indexação ao longo deste eixo.
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
Você possui um array 2D chamado exam_scores contendo as notas de cada exame de uma determinada disciplina. Cada coluna representa uma disciplina específica e cada linha representa um aluno individual. Assim, uma linha específica exibe as notas desse aluno para cada exame.
- Crie um array 2D NumPy chamado
top_scores_subjectcom base emexam_scores, onde cada coluna, representando uma determinada disciplina, está ordenada pelas notas em ordem decrescente. - Crie um array 1D NumPy chamado
sorted_scorescom base emexam_scores, contendo todas as notas ordenadas em ordem crescente.
Dessa forma, é possível identificar facilmente as maiores notas de cada exame e as menores notas entre todos os exames.
Solução
Obrigado pelo seu feedback!
single
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Can you explain what axis 0 and axis 1 mean in a 2D array?
How does sorting along different axes affect the output?
Can you show more examples of sorting 2D arrays in NumPy?
Incrível!
Completion taxa melhorada para 3.85
Ordenando Arrays 2D
Deslize para mostrar o menu
Como pode ser observado, ao passar simplesmente nosso array 2D para a função sort(), cada array 1D é ordenado ao longo do eixo 1 (que é a opção padrão em um array 2D). Definindo axis=0, cada array 1D é ordenado ao longo do eixo 0 (cada coluna).
Definindo axis=None, é retornado um array 1D contínuo e ordenado com todos os elementos do 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))
Ordenando Arrays 2D em Ordem Decrescente
Ao ordenar arrays 2D em ordem decrescente ao longo de um determinado eixo, é necessário utilizar dois slices: um slice completo ([:]) e outro com passo negativo ([::-1]). A posição do slice com passo negativo deve corresponder ao eixo ao longo do qual está sendo feita a ordenação.
Ao classificar ao longo do eixo 0, é possível utilizar apenas um slice com passo negativo, pois ele já faz a indexação ao longo deste eixo.
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
Você possui um array 2D chamado exam_scores contendo as notas de cada exame de uma determinada disciplina. Cada coluna representa uma disciplina específica e cada linha representa um aluno individual. Assim, uma linha específica exibe as notas desse aluno para cada exame.
- Crie um array 2D NumPy chamado
top_scores_subjectcom base emexam_scores, onde cada coluna, representando uma determinada disciplina, está ordenada pelas notas em ordem decrescente. - Crie um array 1D NumPy chamado
sorted_scorescom base emexam_scores, contendo todas as notas ordenadas em ordem crescente.
Dessa forma, é possível identificar facilmente as maiores notas de cada exame e as menores notas entre todos os exames.
Solução
Obrigado pelo seu feedback!
single