Как использовать функцию idxmax() в Pandas (с примерами)


Вы можете использовать функцию pandas.DataFrame.idxmax() , чтобы вернуть индекс максимального значения по указанной оси в кадре данных pandas.

Эта функция использует следующий синтаксис:

DataFrame.idxmax (ось = 0, скипна = Истина)

куда:

  • axis : Используемая ось (0 = строки, 1 = столбцы). По умолчанию 0.
  • skipna : следует ли исключать значения NA или null. Значение по умолчанию — Истина.

В следующих примерах показано, как использовать эту функцию на практике со следующими пандами DataFrame:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 8, 9, 23],
 'assists': [5, 7, 7, 9, 12, 9],
 'rebounds': [11, 8, 11, 6, 6, 5]},
 index=['Andy','Bob', 'Chad', 'Dan', 'Eric', 'Frank'])

#view DataFrame
df

 points assists rebounds
Andy 25 5 11
Bob 12 7 8
Chad 15 7 11
Dan 8 9 6
Eric 9 12 6
Frank 23 9 5

Пример 1: найти индекс с максимальным значением для каждого столбца

В следующем коде показано, как найти индекс с максимальным значением для каждого столбца:

#find index that has max value for each column
df.idxmax (axis= 0 )

points Andy
assists Eric
rebounds Andy
dtype: object

Из вывода мы видим:

  • Игрок с наибольшим значением в столбце очков — Энди.
  • Игрок с самым высоким значением в колонке передач — Эрик.
  • Игрок с наибольшим значением в столбце подборов — Энди.

Важно отметить, что функция idxmax() вернет первое вхождение максимального значения.

Например, обратите внимание, что у Энди и Чеда было по 11 подборов. Поскольку Энди появляется первым в DataFrame, возвращается его имя.

Пример 2: найти столбец с максимальным значением для каждой строки

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

#find column that has max value for each row
df.idxmax (axis= 1 )

Andy points
Bob points
Chad points
Dan assists
Eric assists
Frank points
dtype: object

Из вывода мы видим:

  • Наибольшее значение в строке с надписью «Энди» можно найти в столбце очков .
  • Наибольшее значение в строке с надписью «Боб» можно найти в столбце очков .
  • Наибольшее значение в строке с надписью «Чад» можно найти в столбце очков .
  • Самое высокое значение в строке с надписью «Дэн» можно найти в столбце передач .
  • Наибольшее значение в строке с надписью «Эрик» можно найти в столбце передач .
  • Наибольшее значение в строке с надписью «Энди» можно найти в столбце очков .

Обратитесь к документации pandas за полным объяснением функции idxmax().

Дополнительные ресурсы

Как найти максимальное значение столбцов в Pandas
Как рассчитать среднее значение столбцов в Pandas
Как рассчитать сумму столбцов в Pandas

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.