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

[numpy] PY - NumPy Searching Arrays (배열 검색) ★

2038  
where() 메서드 - 배열 검색

 

배열에서 특정 값 검색 후, 일치하는 색인번호 반환.

※ 배열 색인번호는 0부터 시작.

 


[구문]

 

np.where('찾을 조건')

 


[반환값]

 

일치 색인번호 존재 시, 일치 색인번호 값으로 구성된 배열 반환.

일치 색인번호 없을 시, (array([], dtype=int64),) 반환.

 


[예제1] 값이 3인 색인번호 반환.

 

import numpy as np

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

x = np.where(arr == 3)

print(x) 

 

결과값: (array([2, 5, 6], dtype=int64),)


[예제2] 값이 짝수인 색인번호 반환.

 

import numpy as np

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

x = np.where(arr%2 == 0)

print(x)

 

결과값: (array([1, 3, 5, 7], dtype=int64),)


[예제3] 값이 홀수인 색인번호 반환.

 

import numpy as np

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

x = np.where(arr%2 == 1)

print(x)

 

결과값: (array([0, 2, 4, 6], dtype=int64),) 


searchsorted() 메서드 - 검색 정렬

 

배열 값을 binary(이진) 검색 후, 넣을 값의 색인번호 반환.

※ 정렬된 배열에서 사용되는 걸로 간주.

 


[구문]

 

np.searchsorted(arr, val, side='left')

 


[매개변수]

 

arr

필수. 배열.

 

val

필수. 넣을 값, 또는 넣을 값들로 구성된 배열.

 

side='left'

선택. 배열에 동일 값 존재 시, 넣을 방향.

left : 왼쪽 (기본값)

right : 오른쪽

 


[반환값]

 

넣을 값이 1개인 경우, 위치할 색인번호 반환.

넣을 값이 여러 개이면, 위치할 색인번호로 구성된 배열 반환.

 


[예제1]  7이 들어갈 왼쪽 색인번호.

 

import numpy as np

arr = np.array([6, 7, 8, 9])

x = np.searchsorted(arr, 7)

print(x)

 

결과값: 1


[예제2] 7이 들어갈 오른쪽 색인번호

 

import numpy as np

arr = np.array([6, 7, 8, 9])

x = np.searchsorted(arr, 7, side='right')

print(x)

 

결과값: 2


[예제3] 여러 값이 들어갈 각각의 왼쪽 색인번호.

 

import numpy as np

arr = np.array([1, 3, 5, 7])

x = np.searchsorted(arr, [2, 4, 6])

print(x)

 

결과값: [1 2 3]



분류 제목
numpy PY - NumPy ufuncs : Simple Arithmetic (간단 산수)
numpy PY - NumPy ufuncs : Rounding Decimals (반올림 소수점)
numpy PY - NumPy ufuncs : Logs (로그)
numpy PY - NumPy ufuncs : Summations (합계=합산)
numpy PY - NumPy ufuncs : Products (요소 곱셈)
numpy PY - NumPy ufuncs : Differences (요소의 차)
numpy PY - NumPy ufuncs : Finding LCM (최소공배수 찾기)
numpy PY - NumPy ufuncs : Finding GCD (최대공약수 찾기)
numpy PY - NumPy ufuncs : Trigonometric Functions (삼각함수)
numpy PY - NumPy ufuncs : Hyperbolic Functions (쌍곡선함수)
numpy PY - NumPy ufuncs : Set Operations (집합 연산)
howto Python - 3과 5의 배수의 합산(합계)
basic Python - Math (수학)
module Python - statistics 모듈 메서드 종류 (= 통계 모듈)
module Python - statistics.harmonic_mean() 메서드 - 조화 평균값 (= harmonic…
module Python - statistics.mean() 메서드 ★ - 평균값 (= mean메서드 = 민메서드)
module Python - statistics.median() 메서드 ★ - 중앙값 (= 중간값 = 가운데값 = med…
module Python - statistics.median_grouped() 메서드 -
module Python - statistics.median_high() 메서드 - 높은 중앙값 (= median_hig…
module Python - statistics.median_low() 메서드 - 낮은 중앙값 (= median_low메…
18/24
목록
찾아주셔서 감사합니다. Since 2012