logo

numpy.argmax у Python

У багатьох випадках, коли розмір масиву занадто великий, потрібно надто багато часу, щоб знайти максимальну кількість елементів з них. Для цього модуль numpy Python надає функцію під назвою numpy.argmax() . Ця функція повертає індекси максимальних значень, які повертаються разом із зазначеною віссю.

numpy argmax

Синтаксис:

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

Параметри

x: array_like

Цей параметр визначає вихідний масив, максимальне значення якого ми хочемо знати.

порівняти рядок java

вісь: int (опціонально)

Цей параметр визначає вісь, уздовж якої присутній індекс, і за замовчуванням він знаходиться у зведеному масиві.

out: масив (необов'язково)

Цей параметр визначає ndarray, у який буде вставлено результат. Це буде того самого типу і форми, які підходять для зберігання результату

Повернення

Цей параметр визначає ndarray, який містить індекси масиву. Форма така ж, як x.форма зі знятим розміром уздовж осі.

коди помилок linux

приклад 1:

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

Вихід:

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

У наведеному вище коді

  • Ми імпортували numpy з псевдонімом np.
  • Ми створили масив 'x' використовуючи np.arange() функція у формі чотирьох рядків і п'яти стовпців.
  • Ми також додали 7 у кожен елемент масиву.
  • Ми оголосили змінну 'і' і присвоєно повернуте значення np.argmax() функція.
  • Ми пройшли масив 'x' у функції.
  • Нарешті, ми спробували надрукувати значення 'і' .

У вихідних даних він показує індекси максимального елемента в масиві.

приклад 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 

Вихід:

f фільми
 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]) 

У наведеному вище коді

  • Ми імпортували numpy з псевдонімом np.
  • Ми створили багатовимірний масив ' використовуючи np.array() функція.
  • Ми оголосили змінну 'index_arr' і присвоєно повернуте значення np.argmax() функція.
  • Ми пройшли масив 'а' а вісь у функції.
  • Ми спробували надрукувати значення 'index_arr' .
  • Зрештою, ми спробували отримати максимальне значення масиву за допомогою двох різних способів, які дуже схожі на np.argmax() .

У вихідних даних він показує індекси максимальних елементів у масиві та значення, які присутні в цих індексах.