РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
53 of 687 menu

Метод idxmax

Метод idxmax применяется к DataFrame и возвращает индекс (метку строки или столбца) с максимальным значением. Первым параметром можно задать ось axis: 0 для поиска по столбцам (индексы строк), 1 для поиска по строкам (индексы столбцов). По умолчанию axis=0. Если несколько максимумов, возвращается первый. Для пропущенных значений (NaN) по умолчанию они игнорируются.

Синтаксис

df.idxmax(axis=0, skipna=True)

Пример

Найдём индексы строк, в которых находятся максимальные значения в каждом столбце таблицы:

import pandas as pd df = pd.DataFrame({ 'a': [1, 5, 3, 4, 2], 'b': [10, 20, 30, 40, 50] }) res = df.idxmax() print(res)

Результат выполнения кода:

a 1 b 4 dtype: int64

Пример

Теперь найдём индексы столбцов, где находятся максимальные значения в каждой строке. Для этого укажем axis=1:

import pandas as pd df = pd.DataFrame({ 'a': [1, 5, 3], 'b': [4, 2, 6] }) res = df.idxmax(axis=1) print(res)

Результат выполнения кода:

0 b 1 a 2 b dtype: object

Пример

При работе с пропущенными значениями метод по умолчанию их игнорирует:

import pandas as pd import numpy as np df = pd.DataFrame({ 'a': [1, np.nan, 3], 'b': [np.nan, 5, 2] }) res = df.idxmax() print(res)

Результат выполнения кода:

a 2 b 1 dtype: int64

Пример

Если пропуски нужно учитывать, укажем skipna=False. Тогда результат будет NaN, если в колонке есть пропуски:

import pandas as pd import numpy as np df = pd.DataFrame({ 'a': [1, np.nan, 3], 'b': [np.nan, 5, 2] }) res = df.idxmax(skipna=False) print(res)

Результат выполнения кода:

a NaN b NaN dtype: float64

Смотрите также

  • метод idxmin,
    который возвращает индекс минимального значения
  • метод max,
    который возвращает максимальные значения
  • метод min,
    который возвращает минимальные значения
  • метод nlargest,
    который возвращает несколько наибольших значений
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить