Pandas: retorna uma linha com valor máximo em uma determinada coluna
Você pode usar os seguintes métodos para retornar a linha de um DataFrame do pandas que contém o valor máximo em uma coluna específica:
Método 1: Retornar linha com valor máximo
df[df[' my_column '] == df[' my_column ']. max ()]
Método 2: retornar índice de linha com valor máximo
df[' my_column ']. idxmax ()
Os exemplos a seguir mostram como usar cada método na prática com o seguinte DataFrame do pandas:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
' points ': [18, 22, 19, 14, 14, 11, 28, 20],
' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})
#view DataFrame
print (df)
team points assists rebounds
0 A 18 5 11
1 B 22 7 8
2 C 19 7 10
3 D 14 9 6
4 E 14 12 6
5 F 11 9 5
6 G 28 9 9
7:20 a.m. 4:12
Exemplo 1: Retornar uma linha com valor máximo
O código a seguir mostra como retornar a linha do DataFrame com o valor máximo na coluna de pontos :
#return row with max value in points column
df[df[' points '] == df[' points ']. max ()]
team points assists rebounds
6 G 28 9 9
O valor máximo na coluna de pontos era 28 , portanto a linha contendo esse valor foi retornada.
Exemplo 2: Índice de retorno de uma linha com valor máximo
O código a seguir mostra como retornar apenas o índice da linha com valor máximo na coluna de pontos :
#return row that contains max value in points column
df[' points ']. idxmax ()
6
A linha na posição 6 do índice continha o valor máximo na coluna de pontos , portanto, um valor 6 foi retornado.
Relacionado: Como usar a função idxmax() em Pandas (com exemplos)
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:
Como encontrar o valor máximo por grupo no Pandas
Como encontrar o valor máximo das colunas no Pandas