본문 바로가기

Software/Python

numpy의 where 함수 사용법

머신러닝이나 딥러닝을 하다보면, numpy 모듈의 다양한 함수를 사용하게 되는 것 같습니다. 오늘은 그 중에서 은근 많이 사용되는 where 함수에 대해 이야기를 해보려고 합니다. 너무 쉽고 간단하면서 괜찮은 함수인 것 같습니다.

간단하게 numpy를 import하구요. 위 코드처럼 데이터를 numpy array로 선언해 두겠습니다.

뭐 min이나 max값을 찾거나, 그 값의 위치를 찾는 것은 argmin, argmax로 됩니다.

where함수는 조건문을 사용할때입니다. 출력은 근본적으로는 인덱스입니다. a 배열에서 1보다 적은 것은 6, 7번 데이터라는 것이죠.

그걸 슬라이싱에 사용할 수 있습니다. 그러면 1보다 작은 값을 찾아서 그 값만 반환합니다.

혹은 이렇게, 10보다 크거나 같은 값을 찾아서, 0으로 바꾸고, 아닌것은 그대로 두라는 조건문도 가능합니다. 파이썬의 for문 보다 빠르다고 알려져 있습니다.~^^

이렇게 조건을 찾아, 변경하거나, 인덱싱하는 간단한 함수가 numpy의 where함수입니다. 

이번 글의 내용은 모두 아래 동영상에서도 공개되어 있습니다.

youtu.be/Xa0EQF02fyE

 

반응형