NumPy에서 열로 배열 정렬

Muhammad Maisam Abbas 2023년1월30일
  1. numpy.sort()함수를 사용하여 열별로 NumPy 정렬 배열
  2. numpy.argsort()함수를 사용하여 열별로 NumPy 정렬 배열
NumPy에서 열로 배열 정렬

이 튜토리얼은 NumPy에서 열로 배열을 정렬하는 방법을 소개합니다.

numpy.sort()함수를 사용하여 열별로 NumPy 정렬 배열

2D NumPy 배열이 있고 특정 열 내의 요소 순서에 따라 행을 정렬한다고 가정합니다. numpy.sort()함수로이를 수행 할 수 있습니다. numpy.sort()함수는 NumPy 배열을 정렬합니다. numpy.sort()함수의orderaxis매개 변수에서 열 인덱스와 축을 지정할 수 있습니다. numpy.sort()함수를 사용하려면 배열을 필드가있는 구조화 된 배열로 변환해야합니다. 이를 위해numpy.view()함수를 사용할 수 있습니다. 다음 코드 예제를 참조하십시오.

import numpy as np

array = np.array([[1, 1, 2], [0, 0, 1], [1, 1, 3]])
print("Array before sorting\n", array)

array.view("i8,i8,i8").sort(order=["f1"], axis=0)
print("Array after sorting\n", array)

출력:

Array before sorting
 [[1 1 2]
 [0 0 1]
 [1 1 3]]
Array after sorting
 [[0 0 1]
 [1 1 2]
 [1 1 3]]

먼저np.array()함수를 사용하여 2D NumPy 배열array를 생성했습니다. 그런 다음arrayarray.view()함수를 사용하여 구조화 된 배열로 변환했습니다. 그 후sort(order=['f1'], axis=0)함수를 사용하여 두 번째 열로 배열을 정렬했습니다. 여기서f1은 두 번째 열을 나타냅니다.

numpy.argsort()함수를 사용하여 열별로 NumPy 정렬 배열

이전 접근 방식과 똑같은 작업을 수행하는 또 다른 간단한 방법은numpy.argsort()함수를 사용하는 것입니다. numpy.argsort()함수는 배열 요소를 정렬하는데도 사용됩니다. 이전 접근 방식과 매우 유사하지만이 접근 방식이 작동하기 위해numpy.view()함수를 사용할 필요는 없습니다. numpy.argsort()함수는 배열을 정렬하는 데 사용할 인덱스를 반환합니다. 다음 코드 예제를 참조하십시오.

import numpy as np

array = np.array([[1, 1, 2], [0, 0, 1], [1, 1, 3]])
print("Array before sorting\n", array)

array[array[:, 1].argsort()]
print("Array after sorting\n", array)

출력:

Array before sorting
 [[1 1 2]
 [0 0 1]
 [1 1 3]]
Array after sorting
 [[0 0 1]
 [1 1 2]
 [1 1 3]]

먼저np.array()함수를 사용하여 2D NumPy 배열array를 생성했습니다. 그런 다음 배열 슬라이스를 사용하여array의 두 번째 열만 지정하고np.argsort()함수로 정렬했습니다. np.argsort()함수에 의해 반환 된 인덱스를 사용하여array를 정렬했습니다.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn