Numpy: 값이 true인 인덱스를 얻는 방법


NumPy에서 조건이 true인 인덱스를 얻으려면 다음 방법을 사용할 수 있습니다.

방법 1: NumPy 배열에서 조건이 true인 인덱스 가져오기

 #get indices of values greater than 10
n.p. asarray (my_array> 10 ). nonzero ()

방법 2: NumPy 행렬에서 조건이 true인 인덱스 가져오기

 #get indices of values greater than 10
n.p. transpose ((my_matrix>10) .nonzero ())

방법 3: NumPy 행렬의 모든 행에서 조건이 참인 인덱스 가져오기

 #get indices of rows where any value is greater than 10
n.p. asarray ( np.any (my_matrix> 10 ,axis= 1 )). nonzero ()

다음 예에서는 각 방법을 실제로 사용하는 방법을 보여줍니다.

예시 1: NumPy 배열에서 조건이 true인 인덱스 가져오기

다음 코드는 값이 10보다 큰 NumPy 배열의 모든 인덱스를 가져오는 방법을 보여줍니다.

 import numpy as np

#create NumPy array
my_array = np. array ([2, 2, 4, 5, 7, 9, 11, 12, 3, 19])

#get index of values greater than 10
n.p. asarray (my_array> 10 ). nonzero ()

(array([6, 7, 9], dtype=int32),)

결과를 보면 원래 NumPy 배열의 인덱스 위치 6 , 7 , 9 에 있는 값이 10보다 큰 값을 가지고 있음을 알 수 있습니다.

예 2: NumPy 행렬에서 조건이 true인 인덱스 가져오기

다음 코드는 값이 10보다 큰 NumPy 행렬의 모든 인덱스를 가져오는 방법을 보여줍니다.

 import numpy as np

#create NumPy matrix
my_matrix = np. array ([[2, 5, 9, 12],
                     [6, 7, 8, 8],
                     [2, 5, 7, 8],
                     [4, 1, 15, 11]])

#get index of values greater than 10
n.p. transpose ((my_matrix> 10 ) .nonzero ())

array([[0, 3],
       [3, 2],
       [3, 3]], dtype=int32)

결과에서 우리는 행렬의 다음 인덱스 위치에 있는 값이 10보다 큰 값을 가지고 있음을 알 수 있습니다.

  • [0, 3]
  • [3, 2]
  • [3, 3]

예 3: NumPy 행렬의 모든 행에서 조건이 참인 인덱스 가져오기

다음 코드는 행의 모든 요소에서 값이 10보다 큰 NumPy 행렬의 모든 행 인덱스를 가져오는 방법을 보여줍니다.

 import numpy as np

#create NumPy matrix
my_matrix = np. array ([[2, 5, 9, 12],
                     [6, 7, 8, 8],
                     [2, 5, 7, 8],
                     [4, 1, 15, 11]])

#get index of rows where any value is greater than 10
n.p. asarray ( np.any (my_matrix> 10 , axis= 1 )). nonzero ()

(array([0, 3], dtype=int32),)

결과에서 0 행과 3 행에 10보다 큰 값이 하나 이상 있음을 알 수 있습니다.

참고 : 열에서 조건이 true인 인덱스를 얻으려면 대신 axis=0 을 사용하십시오.

추가 리소스

다음 튜토리얼에서는 NumPy에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

NumPy 배열을 값으로 채우는 방법
NumPy 배열에서 특정 요소를 제거하는 방법
NumPy 배열의 요소를 바꾸는 방법
NumPy 배열에서 특정 행을 얻는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다