Pandas: como classificar linhas por valor absoluto


Você pode usar os seguintes métodos para classificar as linhas de um DataFrame do pandas com base no valor absoluto de uma coluna:

Método 1: classificar por valor absoluto (menor valor absoluto exibido primeiro)

 df. reindex (df[' my_column ']. abs (). sort_values (). index )

Método 2: classificar por valor absoluto (o maior valor absoluto é exibido primeiro)

 df. reindex (df[' my_column ']. abs (). sort_values (ascending= False ) .index )

Os exemplos a seguir mostram como usar cada método na prática com o seguinte DataFrame do pandas que contém informações sobre vários jogadores de basquete:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' over_under ': [4, -9, 2, 0, 1, 12, -4, -5]})
                   
#view DataFrame
print (df)

  player over_under
0 to 4
1 B -9
2 C 2
3 D 0
4 E 1
5 F 12
6 G -4
7 a.m. -5

Exemplo 1: Classificar por valor absoluto (menor valor absoluto exibido primeiro)

Podemos usar a seguinte sintaxe para classificar as linhas do DataFrame com base no valor absoluto da coluna over_under :

 #sort DataFrame based on absolute value of over_under column
df_sorted = df. reindex (df[' over_under ']. abs (). sort_values (). index )

#view sorted DataFrame
print (df_sorted)

  player over_under
3 D 0
4 E 1
2 C 2
0 to 4
6 G -4
7 a.m. -5
1 B -9
5 F 12

Observe que as linhas são classificadas do menor valor absoluto na coluna over_under até o maior valor absoluto.

Exemplo 2: Classificar por valor absoluto (o maior valor absoluto é exibido primeiro)

Podemos usar a seguinte sintaxe para classificar as linhas do DataFrame com base no valor absoluto da coluna over_under :

 #sort DataFrame based on absolute value of over_under column
df_sorted = df. reindex (df[' over_under ']. abs (). sort_values (ascending= False ) .index )

#view sorted DataFrame
print (df_sorted)

  player over_under
5 F 12
1 B -9
7 a.m. -5
0 to 4
6 G -4
2 C 2
4 E 1
3 D 0

Observe que as linhas são classificadas do maior valor absoluto na coluna over_under até o menor valor absoluto.

Nota : Você pode encontrar a documentação completa da função sort_values() do pandas aqui .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:

Pandas: como classificar por data
Pandas: como classificar colunas por nome
Pandas: como classificar por índice e coluna

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *