NumPy는 ndarray 내 저장된 데이터의 정렬을 위한 함수를 제공한다.
np.sort(array)
- 기본적으로 오름차순 정렬만 지원함
- 정렬된 결과를 반환하지만, 원본 데이터는 변경하지 않음
- 원본 데이터를 변경하려면 호출 순서를 다음과 같이 작성하면 됨
- array.sort(): 원본 데이터를 변경하고 none 값을 반환
- np.sort()를 활용한 내림차순 정렬
1) np.sort()를 통해 오름차순 정렬하여 저장
2) 오름차순 정렬된 배열을 역순으로 출력: array[::-1]
np.sort(array, axis)
- 기본적으로 1차원 정렬과 동일함
- 2차원 데이터의 정렬 시에는, axis를 통해 집계 방향을 결정함
np.argsort(array)
- 입력된 배열을 오름차순으로 정렬한 뒤, 배열의 인덱스 값만 반환하는 함수
import numpy as np
# 샘플 데이터 생성
sample = np.array([2,5,8,1])
print('1D-Array Sample')
print(sample)
# np.sort() 정렬
result = np.sort(sample)
print('\nResult of np.sort')
print('Result :', result)
print('Original :', sample)
# [::-1] 실습
print('\nTest[::-1] ')
print('Original :', sample)
print('Result :', sample[::-1])
# 내림차순 정렬
sort_arr = np.sort(sample)
result = sort_arr[::-1]
print('\nDcending Order')
print('Dcending :', result)
# 샘플 데이터 생성
sample = np.array([[9,11],[5,1]])
print('\n2D-Array Sample')
print(sample)
# 2차원 배열 정렬 by axis=0
result = np.sort(sample, axis=0)
print('\nnp.sort(axis=0) :')
print(result)
# 2차원 배열 정렬 by axis=1
result = np.sort(sample, axis=1)
print('\nnp.sort(axis=1) :')
print(result)
# 샘플 데이터 생성
name = np.array(['John','Samuel','Kate','Mike','Sarah'])
score = np.array([78,84,96,88,82])
# np.argsort() 통해 정렬된 인덱스 값만 반환
sort_indexes = np.argsort(score)
print('\nnp.argsort()')
print('sort indexes :', sort_indexes)
# 인덱스 값을 통해 컬럼명 조회
print('sort values :', name[sort_indexes])
1D-Array Sample
[2 5 8 1]
Result of np.sort
Result : [1 2 5 8]
Original : [2 5 8 1]
Test[::-1]
Original : [2 5 8 1]
Result : [1 8 5 2]
Dcending Order
Dcending : [8 5 2 1]
2D-Array Sample
[[ 9 11]
[ 5 1]]
np.sort(axis=0) :
[[ 5 1]
[ 9 11]]
np.sort(axis=1) :
[[ 9 11]
[ 1 5]]
np.argsort()
sort indexes : [0 4 1 3 2]
sort values : ['John' 'Sarah' 'Samuel' 'Mike' 'Kate']
'프로젝트 > 코드프레소 체험단' 카테고리의 다른 글
파이썬으로 배우는 데이터 분석: Pandas - Series (0) | 2022.04.02 |
---|---|
파이썬으로 배우는 데이터 분석: Pandas - Pandas 라이브러리 소개 (0) | 2022.04.01 |
파이썬으로 배우는 데이터 분석: NumPy - 데이터 조회 (0) | 2022.04.01 |
파이썬으로 배우는 데이터 분석: NumPy - NumPy의 집계함수 (0) | 2022.04.01 |
파이썬으로 배우는 데이터 분석: NumPy - NumPy의 기본 연산 (0) | 2022.04.01 |