반응형
평평하지 않은 인덱스를 반환하는 numpy 배열의 Argmax
저는 Numpy 배열에서 최대 요소의 인덱스를 얻으려고 합니다.이 작업은 다음을 사용하여 수행할 수 있습니다.numpy.argmax
제 문제는, 제가 전체 배열에서 가장 큰 요소를 찾고 그 지수를 얻고 싶어한다는 것입니다.
numpy.argmax
하나의 축을 따라 적용할 수도 있고, 제가 원하는 축이 아닌 평평한 배열에 적용할 수도 있습니다.
내 문제는 사용하는 것입니다.numpy.argmax
와 함께axis=None
다차원 인덱스를 원할 때 플랫 인덱스를 반환합니다.
나는 사용할 수 있습니다.divmod
평평하지 않은 인덱스를 얻으려고 하는데, 이것은 보기 흉하게 느껴집니다.이보다 더 좋은 방법은 없습니까?
의 결과에 사용할 수 있습니다.numpy.argmax()
:
>>> a = numpy.random.random((10, 10))
>>> numpy.unravel_index(a.argmax(), a.shape)
(6, 7)
>>> a[6, 7] == a.max()
True
np.where(a==a.max())
최대 요소의 좌표를 반환하지만 배열을 두 번 구문 분석해야 합니다.
>>> a = np.array(((3,4,5),(0,1,2)))
>>> np.where(a==a.max())
(array([0]), array([2]))
이것과 비교하면,argmax
최대값과 동일한 모든 요소의 좌표를 반환합니다.argmax
이 중 하나만 반환합니다(np.ones(5).argmax()
돌아온다0
).
최대값의 모든 발생에 대한 평평하지 않은 인덱스를 얻으려면 다음을 사용하여 eumiro의 응답을 약간 수정할 수 있습니다.argwhere
대신에where
:
np.argwhere(a==a.max())
>>> a = np.array([[1,2,4],[4,3,4]])
>>> np.argwhere(a==a.max())
array([[0, 2],
[1, 0],
[1, 2]])
언급URL : https://stackoverflow.com/questions/9482550/argmax-of-numpy-array-returning-non-flat-indices
반응형
'sourcecode' 카테고리의 다른 글
웹 워커로부터 AJAX 요청을 할 수 있습니까? (0) | 2023.09.01 |
---|---|
Angular2 동적 변경 CSS 속성 (0) | 2023.09.01 |
Javascript에서 이중 백슬래시를 단일 백슬래시로 바꾸기 (0) | 2023.09.01 |
Jersey: 요소가 1개인 Json 배열이 개체로 직렬화됩니다. (0) | 2023.09.01 |
Powershell 이미지를 https://www.artstation.com/ 에 업로드합니다. (0) | 2023.09.01 |