Python

[numpy] PY - NumPy Sorting Arrays (배열 정렬) - sort() 메서드 ★

6958

목차

  1. sort() 정의 - 배열 정렬
  2. sort() 구문 
  3. sort() 예제 - 1차원 배열 정렬
  4. sort() 에제 - 2차원 배열 정렬

 

sort() 정의 - 배열 정렬

 

배열 복사 후, 요소를 (오름차순/내림차순) 정렬해 반환.

※ 숫자, 문자열, 참거짓 등 정렬 가능.

※ 다차원 배열 경우, 각각의 배열 내, 배열 간 정렬 가능.


 

sort() 구문

※ import numpy as np

 

1차원 배열 오름차순

np.sort(arr)

 

1차원 배열 내림차순

np.sort(arr)[::-1] 


2차원 배열 세로축 (=열축)간 비교 후 오름차순.

np.sort(arr, axis=1)

※ 1차원 내림차순 코드 결과와 동일.

 

2차원 배열 세로축(=열축)간 비교 후 내림차순. (※ 잘 사용 X)

np.sort(arr, axis=1)[::-1]

※ 1차원 오름차순 코드 결과와 동일.

 

2차원 배열 가로축(=행축)간 비교 후 오름차순

np.sort(arr, axis=0)

 

2차원 배열 가로축(=행축)간 비교 후 내림차순

np.sort(arr, axis=0)[::-1]

 


[매개변수]

 

arr

필수. 배열.

 

axis

선택. 값간 비교할 기준 축.

axis=1 : 세로축 (= 열축)

axis=0 : 가로축 (= 행축)

 

ps. 

[::-1]

선택. 다차원 배열 시, 배열 순서 뒤집기. (= 역순)

 

 

sort() 예제 - 1차원 배열 정렬

[예제1] - 숫자 (오름차순/내림차순) 정렬

 

import numpy as np

arr = np.array([3, 2, 0, 1])

print(np.sort(arr)) # [0 1 2 3]

print(np.sort(arr)[::-1]) # [3 2 1 0] 

 


[예제2] - 문자열 (오름차순/내림차순) 정렬

 

import numpy as np

arr = np.array(['HTML', 'CSS', 'JS'])

print(np.sort(arr)) # ['CSS' 'HTML' 'JS']

print(np.sort(arr)[::-1]) # ['JS' 'HTML' 'CSS']



[예제3] - 참거짓 (오름차순/내림차순) 정렬

 

import numpy as np

arr = np.array([True, False, True])

print(np.sort(arr)) # [False True True]

print(np.sort(arr)[::-1]) # [True True False]

 

 

sort() 에제 - 2차원 배열 정렬

[예제1] - 2차원 배열 세로축(=열축)간 비교 후 오름차순

※ 1차원 오름차순 코드 결과와 동일.

 

import numpy as np

arr = np.array([[4, 3, 5], [6, 1, 2], [9, 7, 8], [11, 10, 12]])

print(np.sort(arr, axis=1))

 

결과값:

[[ 3  4  5]

 [ 1  2  6]

 [ 7  8  9]

 [10 11 12]] 


[예제2] - 2차원 배열 세로축(=열축)간 비교 후, 배열 역순

※ 1차원 내림차순 코드 결과와 동일.

※ 이 경우는 잘 사용 X. 

∵ 값비교방향과 배열순서조정방향이 십자교차해 정렬 무의미.

 

import numpy as np

arr = np.array([[4, 3, 5], [6, 1, 2], [9, 7, 8], [11, 10, 12]])

print(np.sort(arr, axis=1)[::-1])

 

결과값:

[[10 11 12]

 [ 7  8  9]

 [ 1  2  6]

 [ 3  4  5]]


[예제3] - 2차원 배열 가로축(=행축)간 비교 후, 오름차순

 

import numpy as np

arr = np.array([[4, 3, 5], [6, 1, 2], [9, 7, 8], [11, 10, 12]])

print(np.sort(arr, axis=0))

 

결과값:

[[ 4  1  2]

 [ 6  3  5]

 [ 9  7  8]

 [11 10 12]]


[예제4] - 2차원 배열 가로축(=행축)간 비교 후, 내림차순

 

import numpy as np

arr = np.array([[4, 3, 5], [6, 1, 2], [9, 7, 8], [11, 10, 12]])

print(np.sort(arr, axis=0)[::-1])

 

결과값: 

[[11 10 12]

 [ 9  7  8]

 [ 6  3  5]

 [ 4  1  2]] 



분류 제목
set Python - set.isdisjoint() 메서드 - 두 Set의 공통요소 유무 체크. (= isdisj…
set Python - set.issubset() 메서드 - 서브 Set인지 체크. (= issubset메서드 = …
set Python - set.issuperset() 메서드 - 수퍼 Set인지 체크. (= issuperset메서…
set Python - set.pop() 메서드 ★ - Set에서 요소 랜덤 제거 후, 제거된 요소 반환. (= p…
set Python - set.remove() 메서드 ★ - Set에서 지정요소 제거. (= remove메서드 = …
set Python - set.symmetric_difference() 메서드 - Set의 공통요소 제외한 결합 S…
set Python - set.symmetric_difference_update() 메서드 - Set의 공통요소 제…
set Python - set.union() 메서드 ★ - 중복 시 한번만 포함해 Set 결합. (=셋 합치기 u…
set Python - set.update() 메서드 - 두 Set을 결합해 기존 set을 수정. (= update…
file Python - File Method - 파일메서드 종류
file Python - close() 메서드 ★★★ - 열린 파일 닫기. (= close메서드 = 클로즈 메서드)
file Python - detach() 메서드 △ - 버퍼에서 분리된 원시 스트림 반환. (= detach메서드 =…
file Python - fileno() 메서드 - 스트림의 파일 설명자를 숫자로 반환. (= fileno메서드 = …
file Python - flush() 메서드 ★ - 버퍼 비우기/정리. (= flush메서드 = 플러시메서드)
file Python - isatty() 메서드 - 파일 스트림이 상호대화형인지 체크. (= isatty메서드)
17/32
목록
 홈  PC버전 로그인 일본어
그누앞단언어
그누뒷단언어
그외코딩언어
그누보드
제작의뢰
Q&A
커뮤니티 3
웹유틸
회원센터
홈짱닷컴 PC버전 로그인