[파이썬][numpy] numpy `isin` 함수
Numpy는 파이썬의 대표적인 과학 계산 라이브러리로, 다양한 배열 연산과 함수를 제공합니다. 이 중에서 isin
함수는 배열에 속한 요소들 중에서 다른 배열과 일치하는 요소들을 찾는 기능을 제공합니다. 이번 블로그 포스트에서는 Numpy 라이브러리의 isin
함수에 대해서 자세히 알아보도록 하겠습니다.
isin
함수의 사용법
isin
함수는 다음과 같은 형태로 사용할 수 있습니다:
numpy.isin(element, test_elements, assume_unique=False, invert=False)
element
: 대상 배열 (주로 1차원 배열)test_elements
: 테스트할 배열 (주로 1차원 배열)assume_unique
:test_elements
가 고유한 값들을 가지고 있는지 여부 (기본 값은False
)invert
: 일치하는 요소를 찾을지 혹은 일치하지 않는 요소를 찾을지 여부 (기본 값은False
)
isin
함수는 element
배열의 각 요소들을 test_elements
배열과 비교하여, 일치하는 요소들의 boolean 값들을 반환합니다.
예시: isin
함수 사용하기
import numpy as np
# 대상 배열
arr1 = np.array([1, 2, 3, 4, 5])
# 테스트할 배열
arr2 = np.array([2, 4, 6, 8, 10])
# `isin` 함수를 사용하여 arr1 배열에서 arr2와 일치하는 요소 찾기
result = np.isin(arr1, arr2)
print(result)
위 예시 코드에서는 arr1
배열에서 arr2
와 일치하는 요소를 찾기 위해 isin
함수를 사용하고 있습니다. 결과적으로 [False, True, False, True, False]
배열이 출력됩니다. 이는 arr1
배열의 2와 4는 arr2
배열에도 존재하기 때문에 일치하는 요소로 판단되었기 때문입니다.
부가 기능
isin
함수는 assume_unique
와 invert
매개변수를 통해 추가적인 기능을 제공합니다.
assume_unique=True
로 설정하면,test_elements
배열이 고유한 값들을 가지고 있다고 가정하여 연산 속도를 향상시킬 수 있습니다.invert=True
로 설정하면, 일치하는 요소를 찾는 대신에 일치하지 않는 요소를 찾을 수 있습니다.
이러한 부가 기능을 사용하여 더 다양한 요구사항에 맞는 연산을 수행할 수 있습니다.
마무리
Numpy 라이브러리의 isin
함수는 배열 요소들의 일치 여부를 확인하는 강력한 기능을 제공합니다. 이를 통해 두 배열 간의 일치하는 요소를 쉽게 찾거나, 일치하지 않는 요소를 추출할 수 있습니다. isin
함수의 다양한 옵션들을 적절히 활용하면 더 다양한 연산을 수행할 수 있습니다.