Como usar a função idxmax() em pandas (com exemplos)
Você pode usar a função pandas.DataFrame.idxmax() para retornar o índice do valor máximo em um eixo especificado em um DataFrame do pandas.
Esta função usa a seguinte sintaxe:
DataFrame.idxmax(eixo=0, skipna=True)
Ouro:
- eixo : O eixo a ser usado (0 = linhas, 1 = colunas). O valor padrão é 0.
- skipna : Exclui ou não valores NA ou nulos. O padrão é verdadeiro.
Os exemplos a seguir mostram como usar esta função na prática com o seguinte DataFrame do pandas:
import pandas as pd #createDataFrame 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
Exemplo 1: Encontre um índice com valor máximo para cada coluna
O código a seguir mostra como encontrar o índice que possui o valor máximo para cada coluna:
#find index that has max value for each column df. idxmax (axis= 0 ) Andy points assists Eric rebounds Andy dtype:object
Pelo resultado podemos ver:
- O jogador com maior valor na coluna de pontos é Andy.
- O jogador com maior valor na coluna de assistências é Eric.
- O jogador com maior valor na coluna de rebotes é Andy.
É importante observar que a função idxmax() retornará a primeira ocorrência do valor máximo.
Por exemplo, observe que Andy e Chad tiveram 11 rebotes. Como Andy aparece primeiro no DataFrame, seu nome é retornado.
Exemplo 2: Encontre uma coluna com valor máximo para cada linha
O código a seguir mostra como encontrar a coluna que contém o valor máximo para cada linha:
#find column that has max value for each row df. idxmax (axis= 1 ) Andy points Bob stitches Chad points Dan assists Eric assists Frank points dtype:object
Pelo resultado podemos ver:
- O valor mais alto na linha denominada “Andy” está na coluna de pontos .
- O valor mais alto na linha denominada “Bob” está na coluna de pontos .
- O valor mais alto na linha denominada “Chade” está na coluna de pontos .
- O valor mais alto na linha denominada “Dan” está na coluna de assistências .
- O valor mais alto na linha denominada “Eric” está na coluna de assistências .
- O valor mais alto na linha denominada “Andy” está na coluna de pontos .
Consulte a documentação do pandas para uma explicação completa da função idxmax().
Recursos adicionais
Como encontrar o valor máximo das colunas no Pandas
Como calcular a média das colunas no Pandas
Como calcular a soma das colunas no Pandas