자료구조/numpy 자료구조

Numpy - where() 사용 방법

JackSmith 2023. 3. 25.

 

import numpy as np

#조건(해당요소가 3보다 크다)을 만족하는 Index찾기
arr = np.array([1,2,3,4,5])
print(arr)
print(type(arr))
result = np.where(arr>3)
print(result)
print(type(result))
print(result[0])#3번과 4번 인덱스가 위 조건을 만족한다.

#양수,음수를 1과 0으로 변경(양수면 1로, 음수면 0으로 변경)
arr = np.array([-1,2,-3,4,-5])
result = np.where(arr>0, 1 , 0) #arr에 있는 값이 0보다 크면, 두번쨰 파라미터(1)을 반환하고, 0보다 작거나 같으면 세번째 파라미터(0)를 반환합니다.
print(result)

#조건에 따라 값 변경
arr = np.array([1,2,3,4,5])
result = np.where(arr>3, arr, 0) #arr에 있는 값이 3보다 크면, 있는 그대로 반환하고(통과하고), 3보다 작거나 같으면 0을 반환합니다.
print(result)

#조건에 따라 다른 배열 선택
a = np.array([1,2,3,4,5])
b = np.array([10,20,30,40,50])
condition = np.array([True, False, True, False, True])
result = np.where(condition, a ,b)
print(result)

 

참고 및 출처:

https://codechacha.com/ko/python-numpy-where/

 

Numpy - where() 사용 방법

Python numpy의 where 함수는 배열의 요소가 어떤 조건에 따라 값을 선택하는데 사용됩니다. where()는 아래와 같이 사용하며, 배열의 요소가 condition에 대해서 true면 x가 리턴되고, false면 y가 리턴됩니

codechacha.com

 

댓글