Рубрики
Без рубрики

Python numpy.argmax (): Сообщение для начинающих

В этом руководстве мы узнаем о функции numpy.argmax () в Python. Эта функция возвращает индексы максимальных элементов в матрице. То

Автор оригинала: Pankaj Kumar.

В этом руководстве мы узнаем о numpy.argmax () Функция в Python Отказ Эта функция возвращает индексы максимальных элементов в матрице. Функция позволяет пройти аргумент, упомянующий ось, наряду, на которой вам нужно найти индексы максимальных элементов.

Мы получаем три варианта при использовании функции argmax.

  • Найдите максимальный элемент для всей матрицы. (По умолчанию)
  • Получите максимальный элемент для каждой строки.
  • Получите максимальный элемент для каждого столбца.

Давайте посмотрим, как использовать эту функцию.

Нахождение максимального элемента из матрицы с python numpy.argmax ()

Давайте начнем с импорта Numpy и создания образца матрицы ..

import numpy as np
a = np.arange(12).reshape(4,3) + 10
print(a)

Выход:

[[10 11 12]
 [13 14 15]
 [16 17 18]
 [19 20 21]]

Теперь давайте найдем индекс максимального элемента в массиве.

print(np.argmax(a))

Выход: 11.

Мы получаем 11 в качестве вывода. Это связано с тем, что в функции Numpy.argmax () не упоминается оси. Как только это сделано, он возвращает индекс последнего элемента в массиве.

Или в основном, без указанной оси функция Python Numpy.argmax () возвращает количество элементов в массиве.

Мы можем использовать функцию NP.UNRAVAVEL_INDEX для получения индекса, соответствующего 2D-массиве с вывода Numpy.argmax.

Примечание: В случае нескольких вхождений максимальных значений функция возвращает индексы, соответствующие первому.

Использование NP.UNRAVEL_INDEX на выходе Argmax

Использовать np.unravel_index Функция на выходе Argmax, давайте запустим следующий фрагмент кода:

index = np.unravel_index(np.argmax(a), a.shape)
print(index)
print(a[index])

Это дает следующий выход:

(3, 2)
21

Мы можем объединить код из этих двух секций, чтобы напрямую печатать максимальный элемент.

Заполните код для печати максимального элемента для матрицы

Вот полный код:

import numpy as np
a = np.arange(12).reshape(4,3) + 10
print(a)
index = np.unravel_index(np.argmax(a), a.shape)
print(index)
print(a[index])

Найти максимальные элементы вдоль столбцов с помощью python numpy.argmax ()

Чтобы найти максимальные элементы для каждого использования столбцов:

import numpy as np
a = np.arange(12).reshape(4,3) + 10
print(np.argmax(a, axis=0))

Выход:

[3 3 3]

Это дает Индексное значение максимальных элементов вдоль каждого столбца.

Точно так же, если мы упомянем оси как 1, то мы можем получить индексы максимальных элементов вдоль рядов.

Найти максимальные элементы вдоль рядов

Чтобы найти максимальные элементы для каждой используемой строки:

import numpy as np
a = np.arange(12).reshape(4,3) + 10
print(np.argmax(a, axis=1))

Выход:

[2 2 2 2]

Заключение

В этом руководстве было функция numpy.argmax () в Python. Мы узнали, как эта функция используется для нахождения максимальных элементов вдоль разных осей матрицы.