У многим случајевима, где је величина низа превелика, потребно је превише времена да се пронађе максимум елемената из њих. У ту сврху, нумпи модул Питхон-а обезбеђује функцију тзв нумпи.аргмак() . Ова функција враћа индексе максималних вредности које се враћају заједно са наведеном осовином.
Синтакса:
numpy.argmax(a, axis=None, out=None)
Параметерс
к: арраи_лике
Овај параметар дефинише изворни низ чију максималну вредност желимо да знамо.
јава изузеци
оса: инт (опционо)
Овај параметар дефинише осу дуж које је присутан индекс, а подразумевано се налази у спљоштеном низу.
оут: низ (опционо)
Овај параметар дефинише ндарраи у који ће резултат бити уметнут. Ово ће бити истог типа и облика, што је прикладно за чување резултата
показивачи у в
Повратак
Овај параметар дефинише ндарраи, који садржи индексе низа. Облик је исти као к.облик са уклоњеном димензијом дуж осе.
Пример 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
У горњем коду
- Увезли смо нумпи са псеудонимом нп.
- Направили смо низ 'Икс' Користећи нп.аранге() функција са обликом четири реда и пет колона.
- Такође смо додали 7 у сваки елемент низа.
- Декларисали смо променљиву 'и' и додељена враћена вредност од нп.аргмак() функција.
- Прошли смо низ 'Икс' у функцији.
- На крају, покушали смо да одштампамо вредност 'и' .
У излазу приказује индексе максималног елемента у низу.
Пример 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])
У горњем коду
- Увезли смо нумпи са псеудонимом нп.
- Направили смо вишедимензионални низ 'а ' Користећи нп.арраи() функција.
- Декларисали смо променљиву 'индек_арр' и додељена враћена вредност од нп.аргмак() функција.
- Прошли смо низ 'а' а оса у функцији.
- Покушали смо да одштампамо вредност 'индек_арр' .
- На крају смо покушали да добијемо максималну вредност низа уз помоћ два различита начина, који су прилично слични нп.аргмак() .
У излазу приказује индексе максималног броја елемената у низу и вредности које су присутне на тим индексима.