Como classificar por múltiplas colunas no pandas (com exemplos)


Você pode usar a seguinte sintaxe básica para classificar um DataFrame do pandas por várias colunas:

 df = df. sort_values ([' column1 ', ' column2 '], ascending=( False , True ))

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: classificar por múltiplas colunas no Pandas

Suponha que temos o seguinte DataFrame do pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [14, 20, 9, 20, 25, 29, 20, 25],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

        points assists rebounds
0 14 5 11
1 20 7 8
2 9 7 10
3 20 9 6
4 25 12 6
5 29 9 5
6 20 9 9
7 25 4 12

Podemos usar a seguinte sintaxe para classificar as linhas do DataFrame aumentando os pontos e depois diminuindo as passagens :

 #sort by points ascending, then assists ascending
df = df. sort_values ([' points ', ' assists '])

#view updated DataFrame
df

	points assists rebounds
2 9 7 10
0 14 5 11
1 20 7 8
3 20 9 6
6 20 9 9
7 25 4 12
4 25 12 6
5 29 9 5

Observe que as linhas são classificadas por pontos ascendentes (do menor para o maior) e, em seguida, passam ascendentes.

Também podemos usar o argumento ascendente para especificar se devemos classificar cada coluna em ordem crescente ou decrescente:

 #sort by points descending, then assists ascending
df = df. sort_values ([' points ', ' assists '], ascending = ( False , True )))

#view updated DataFrame
df

        points assists rebounds
5 29 9 5
7 25 4 12
4 25 12 6
1 20 7 8
3 20 9 6
6 20 9 9
0 14 5 11
2 9 7 10

Observe que as linhas são classificadas por pontos decrescentes (do maior para o menor) e, em seguida, por passagens ascendentes.

Nestes exemplos, classificamos o DataFrame por duas colunas, mas podemos usar essa sintaxe exata para classificar quantas colunas quisermos.

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 operações 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 *