• 회원가입
  • 로그인
  • 구글아이디로 로그인

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

6963  

목차

  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]] 



분류 제목
howto Python - 리스트 중복요소 제거. ★ (Remove List Duplicate)
howto Python - 문자열 순서 뒤집기= 역순 ★ (Reverse a String)
howto Python - 사용자 입력값 더하기 ★ (Add Two Numbers)
shell Python Shell (파이썬 셸 : IDLE) 글자 크기 확대
shell Python 화면 청소 (= 파이썬 화면 지우기)
shell Python Shell (파이썬 셸 : IDLE) 라인 번호 표시
shell Python Shell (파이썬 셸 : IDLE) 입력했던 코드 불러오기. (= 재입력, 다시입력) + 파일…
shell Python Shell (파이썬 셸 : IDLE) 창크기 (= 창너비 x 창높이) 설정.
numpy PY - NumPy Intro (넘파이 소개)
numpy PY - NumPy Start (설치/시작/버전확인) ★ - 모듈 불러오기 (3가지 방법)
numpy PY - NumPy Creating Arrays (배열 생성) ★ - 배열 차원 (= 중첩배열 = 다차원배열…
numpy PY - NumPy Array Indexing (배열 색인) ★ - 배열 요소에 접근
numpy PY - NumPy Array Slicing (배열 자르기) ★ - 배열 요소 일부만 선택.
numpy PY - NumPy Data Types (데이터타입) ★ - 종류 / 확인 / 변환.
numpy PY - NumPy Array Copy vs View (배열 복사 vs 뷰) ★
numpy PY - NumPy Array Shape (배열 모양) ★
numpy PY - NumPy Array Reshaping (배열 재구성) ★ - 배열 모양 변경
numpy PY - NumPy Array Iterating (배열 반복) ★
numpy PY - NumPy Joining Array (배열 결합) ★
numpy PY - NumPy Splitting Array (배열 분할) ★
16/24
목록
찾아주셔서 감사합니다. Since 2012