NumPy 배열 검색
- 이전 페이지 NumPy 배열 분할
- 다음 페이지 NumPy 배열 정렬
배열 검색
배열에서 특정 값을 검색(조회)할 수 있으며, 그 후 일치하는 인덱스를 반환할 수 있습니다.
배열을 검색하려면 사용하세요 where()
메서드.
예제
값 4의 인덱스를 찾기:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 4, 4]) x = np.where(arr == 4) print(x)
이 예제는 튜플을 반환합니다:(array([3, 5, 6],)
의미는 값 4가 인덱스 3, 5, 6에 나타나는 것입니다.
예제
짝수 값을 가진 인덱스를 찾기:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 0) print(x)
예제
홀수 값을 가진 인덱스를 찾기:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 1) print(x)
검색 정렬
이름이 searchsorted()
의 방법, 이 방법은 배열에서 이진 탐색을 수행하고 지정된 값이 검색 순서를 유지하도록 삽입될 인덱스를 반환합니다.
추정하다 searchsorted()
이 메서드는 배열을 정렬하는 데 사용됩니다.
예제
7을 삽입해야 하는 인덱스를 찾습니다:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7) print(x)
예제 설명:정렬 순서를 유지하기 위해 인덱스 1에 숫자 7을 삽입해야 합니다.
이 메서드는 왼쪽에서 시작하여 숫자 7이 다음 값보다 크지 않은 첫 번째 인덱스를 반환합니다.
오른쪽에서 검색
기본적으로 가장 왼쪽의 인덱스를 반환하지만, 지정할 수 있습니다. side='right'
가장 오른쪽의 인덱스를 반환합니다.
예제
오른쪽에서 시작하여 값 7을 삽입해야 하는 인덱스를 찾습니다:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7, side='right') print(x)
예제 설명:정렬 순서를 유지하기 위해 인덱스 2에 숫자 7을 삽입해야 합니다.
이 메서드는 오른쪽에서 시작하여 숫자 7이 다음 값보다 작지 않은 첫 번째 인덱스를 반환합니다.
여러 값
여러 값을 검색하려면 특정 값을 가진 배열을 사용하십시오.
예제
2, 4, 6을 삽입하여 값이 추가되는 인덱스를 찾습니다:
import numpy as np arr = np.array([1, 3, 5, 7]) x = np.searchsorted(arr, [2, 4, 6]) print(x)
반환 값은 배열입니다:[1 2 3]
세 개의 인덱스가 포함되어 있으며, 원본 배열에 2, 4, 6을 삽입하여 순서를 유지합니다.
- 이전 페이지 NumPy 배열 분할
- 다음 페이지 NumPy 배열 정렬