logo

Python의 numpy.argmax

많은 경우 배열의 크기가 너무 크면 배열에서 최대 요소를 찾는 데 너무 많은 시간이 걸립니다. 이를 위해 Python의 numpy 모듈은 다음과 같은 함수를 제공합니다. numpy.argmax() . 이 함수는 지정된 축과 함께 반환되는 최대값의 인덱스를 반환합니다.

numpy argmax

통사론:

 numpy.argmax(a, axis=None, out=None) 

매개변수

x: array_like

이 매개변수는 우리가 알고 싶은 최대값을 가진 소스 배열을 정의합니다.

자바 업데이트

축: int(선택 사항)

이 매개변수는 인덱스가 존재하는 축을 정의하며 기본적으로 평면화된 배열에 포함됩니다.

출력: 배열(선택사항)

이 매개변수는 결과가 삽입될 ndarray를 정의합니다. 이는 결과를 저장하는 데 적합한 동일한 유형 및 모양입니다.

보고

이 매개변수는 배열의 인덱스를 포함하는 ndarray를 정의합니다. 모양은 같아요 x.모양 축을 따른 치수가 제거되었습니다.

예시 1:

 Import numpy as np x = np.arange(20).reshape(4,5) + 7 x y=np.argmax(a) y 

산출:

리눅스 $home
 array([[ 7, 8, 9, 10, 11], [12, 13, 14, 15, 16], [17, 18, 19, 20, 21], [22, 23, 24, 25, 26]]) 19 

위의 코드에서

  • 별칭 이름이 np인 numpy를 가져왔습니다.
  • 우리는 배열을 만들었습니다 '엑스' 사용하여 np.arange() 행 4개, 열 5개 모양으로 작동합니다.
  • 배열의 각 요소에도 7을 추가했습니다.
  • 우리는 변수를 선언했습니다 '그리고' 반환된 값을 할당했습니다. np.argmax() 기능.
  • 우리는 배열을 통과했습니다 '엑스' 기능에서.
  • 마지막으로 우리는 '그리고' .

출력에는 배열의 최대 요소 인덱스가 표시됩니다.

그렇지 않으면 자바에서

예시 2:

 Import numpy as np x = np.arange(20).reshape(4,5) + 7 y=np.argmax(x, axis=0) z=np.argmax(x, axis=1) y z 

산출:

 array([3, 3, 3, 3, 3], dtype=int64) array([4, 4, 4, 4], dtype=int64) 

예시 3:

 Import numpy as np x = np.arange(20).reshape(4,5) + 7 indices = np.unravel_index(np.argmax(x, axis=None), x.shape) indices x[indices] 

산출:

 (3, 4) 26 

예시 4:

 import numpy as np a = np.array([[5,2,1], [3,7,9],[0, 4, 6]]) index_arr = np.argmax(a, axis=-1) index_arr # Same as np.max(a, axis=-1, keepdims=True) result = np.take_along_axis(a, np.expand_dims(index_arr, axis=-1), axis=-1) result1 # Same as np.max(a, axis=-1) result = np.take_along_axis(a, np.expand_dims(index_arr, axis=-1), axis=-1).squeeze(axis=-1) result2 

산출:

 array([[0], [2], [2]]) array([5, 9, 6]) 

위의 코드에서

  • 별칭 이름이 np인 numpy를 가져왔습니다.
  • 다차원 배열을 만들었습니다. 'ㅏ '를 사용하여 np.배열() 기능.
  • 우리는 변수를 선언했습니다 '인덱스_arr' 반환된 값을 할당했습니다. np.argmax() 기능.
  • 우리는 배열을 통과했습니다 'ㅏ' 그리고 함수의 축.
  • 우리는 '인덱스_arr' .
  • 결국 우리는 두 가지 다른 방법을 사용하여 배열의 최대값을 가져오려고 했습니다. 이는 다음과 매우 유사합니다. np.argmax() .

출력에는 배열의 최대 요소 인덱스와 해당 인덱스에 있는 값이 표시됩니다.