- 1. 파이썬 두 리스트 비교하기
- 2. 파이썬으로 html 파일 만들기
- 3. 파이썬 리스트 순서 뒤집기
- 4. 파이썬 리스트 요소 삭제하기
- 5. 파이썬 두 문자열 비교하기 (difflib)
- 6. 파이썬 문자열 앞을 0으로 채우기
- 7. 파이썬 문자열 찾기
- 8. 파이썬 모든 문자열 찾아서 바꾸기
- 9. 파이썬 문자열 결합, 분리하기
- 10. 파이썬 문자열 포맷팅하기
- 11. 파이썬 리스트 슬라이싱 활용하기
- 12. 파이썬 리스트 길이 제한하기
- 13. 파이썬 조건문 간단하게 표현하기
- 14. 파이썬 with 문으로 파일 열고 닫기
- 15. 파이썬 enumerate() 사용하기
- 16. 파이썬 zip() 사용하기
- 17. 파이썬 튜플 언패킹하기
- 18. 파이썬 변수 바꾸기 (swap)
- 19. 파이썬 딕셔너리에서 값 얻기
- 20. 파이썬 출력 결과 저장하기
- 21. 파이썬 폴더 생성하기
- 22. 파이썬 시간 측정하기
- 23. 파이썬 int() 함수 사용하기
- 24. 파이썬 float() 함수 사용하기
- 25. 파이썬 리스트 만들기
- 26. NumPy 어레이 슬라이싱 활용하기
- 27. NumPy 어레이 한 줄에 출력하기
- 28. NumPy 어레이 요소 바꾸기
- 29. NumPy 어레이 정렬 (np.argsort)
- 30. NumPy 어레이 연결, 분리하기
- Python Tutorial
- NumPy Tutorial
- Matplotlib Tutorial
- PyQt5 Tutorial
- BeautifulSoup Tutorial
- xlrd/xlwt Tutorial
- Pillow Tutorial
- Googletrans Tutorial
- PyWin32 Tutorial
- PyAutoGUI Tutorial
- Pyperclip Tutorial
- TensorFlow Tutorial
- Tips and Examples
29. NumPy 어레이 정렬 (np.argsort)¶
NumPy의 argsort() 함수를 사용해서 어레이를 정렬하는 방법에 대해 소개합니다.
■ Table of Contents
기본 사용¶
예제¶
import numpy as np
a = np.array([1.5, 0.2, 4.2, 2.5])
s = a.argsort()
print(s)
print(a[s])
[1 0 3 2]
[0.2 1.5 2.5 4.2]
a는 정렬되지 않은 숫자들의 어레이입니다.
a.argsort()는 어레이 a를 정렬하는 인덱스의 어레이 [1 0 3 2]를 반환합니다.
a[s]와 같이 인덱스의 어레이 s를 사용해서 어레이 a를 다시 정렬하면,
오름차순으로 정렬된 어레이 [0.2 1.5 2.5 4.2]가 됩니다.
내림차순 정렬하기¶
예제¶
import numpy as np
a = np.array([1.5, 0.2, 4.2, 2.5])
s = a.argsort()
print(s)
print(a[s[::-1]])
print(a[s][::-1])
[1 0 3 2]
[4.2 2.5 1.5 0.2]
[4.2 2.5 1.5 0.2]
내림차순으로 정렬된 어레이를 얻기 위해서는
a[s[::-1]]와 같이 인덱스 어레이를 뒤집어서 정렬에 사용하거나,
a[s][::-1]과 같이 오름차순으로 정렬된 어레이를 뒤집어주면 됩니다.
두 어레이를 함께 정렬하기¶
두 개의 어레이에 대해 하나의 어레이를 기준으로 다른 어레이를 정렬할 수 있습니다.
예제¶
import numpy as np
a = np.array([1.5, 0.2, 4.2, 2.5])
b = np.array([3.7, 2.4, 0.3, 1.9])
s = a.argsort()
a = a[s]
b = b[s]
print(a)
print(b)
[1.5 0.2 4.2 2.5]
[2.4 3.7 1.9 0.3]
s는 어레이 a를 정렬하는 인덱스 어레이 [1 0 3 2]입니다.
b[s]와 같이 사용하면, 어레이 a의 오름차순 순서를 기준으로 어레이 b가 정렬됩니다.
이전글/다음글
이전글 : 28. NumPy 어레이 요소 바꾸기
다음글 : 30. NumPy 어레이 연결, 분리하기