Skip to content

Ordenar DataFrame do Pandas: Exemplos e Dicas

Updated on

O DataFrame do Pandas é uma ferramenta poderosa para análise de dados em Python. Ele permite que você armazene e manipule grandes conjuntos de dados com facilidade. A ordenação de dados é uma operação comum que é útil para explorar e visualizar os dados. Neste tutorial, cobriremos como ordenar dados em um DataFrame do Pandas, incluindo a ordenação por coluna, várias colunas, índice e muito mais.

Quer criar rapidamente visualizações de dados em Python?

O PyGWalker é um projeto de código aberto em Python que pode ajudar a acelerar o fluxo de trabalho de análise de dados e visualização diretamente dentro de um ambiente baseado em blocos de notas Jupyter.

PyGWalker (opens in a new tab) transforma seu DataFrame do Pandas (ou DataFrame do Polars) em uma UI visual onde você pode arrastar e soltar variáveis para criar gráficos com facilidade. Basta usar o seguinte código:

pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)

Você pode executar o PyGWalker agora com esses blocos de notas online:

E, não se esqueça de nos dar uma ⭐️ no GitHub!

Execute o PyGWalker no Kaggle Notebook (opens in a new tab)Execute o PyGWalker no Google Colab (opens in a new tab)Dê uma ⭐️ ao PyGWalker no GitHub (opens in a new tab)
Execute o PyGWalker no Kaggle Notebook (opens in a new tab)Execute o PyGWalker no Google Colab (opens in a new tab)Execute o PyGWalker no Google Colab (opens in a new tab)

O que é um DataFrame do Pandas?

O DataFrame do Pandas é uma estrutura de dados bidimensional semelhante a uma tabela que contém linhas e colunas. Ele pode conter uma variedade de tipos de dados, como números, strings e datas. Você pode pensar nele como uma planilha ou uma tabela SQL. É uma maneira conveniente de armazenar e manipular dados com Python.

Como instalar o Pandas em Python?

Antes de mergulharmos na ordenação de um DataFrame do Pandas, você precisa ter certeza de que o Pandas está instalado em seu sistema. Você pode fazer isso executando o seguinte comando em seu terminal ou prompt de comando:

pip install pandas

Isso instalará a versão mais recente do Pandas em seu sistema.

Como criar um DataFrame do Pandas?

Existem muitas maneiras de criar um DataFrame do Pandas. Uma das maneiras mais comuns é criá-lo a partir de um dicionário de listas. Aqui está um exemplo:

import pandas as pd
 
data = {'Nome': ['João', 'Jane', 'Bob', 'Lisa'],
        'Idade': [25, 30, 45, 23],
        'Salário': [50000, 60000, 80000, 40000]}
 
df = pd.DataFrame(data)
 
print(df)
 

Saída:

   Nome  Idade  Salário
0  João     25    50000
1  Jane     30    60000
2   Bob     45    80000
3  Lisa     23    40000

Neste exemplo, criamos um dicionário com três listas, onde cada lista representa uma coluna no DataFrame. Em seguida, usamos a função pd.DataFrame() para criar um DataFrame a partir do dicionário.

Qual é a Diferença Entre Classificar em Ordem Crescente e Decrescente?

Antes de começarmos a classificar um DataFrame do Pandas, é importante entender a diferença entre classificar em ordem crescente e decrescente. Classificar em ordem crescente significa que os valores serão ordenados do menor para o maior. Classificar em ordem decrescente significa que os valores serão ordenados do maior para o menor.

Como Classificar um Pandas DataFrame por Coluna?

Classificar um Pandas DataFrame por coluna é uma operação comum. Você pode usar o método sort_values() para classificar um DataFrame por uma única coluna. Aqui está um exemplo:

import pandas as pd
 
data = {'Nome': ['João', 'Jane', 'Bob', 'Lisa'],
        'Idade': [25, 30, 45, 23],
        'Salário': [50000, 60000, 80000, 40000]}
 
df = pd.DataFrame(data)
 
# classificar pela coluna Idade em ordem crescente
df.sort_values('Idade', ascending=True, inplace=True)
 
print(df)

Saída:

   Nome  Idade  Salário
3  Lisa     23    40000
0  João     25    50000
1  Jane     30    60000
2   Bob     45    80000

Neste exemplo, classificamos o DataFrame pela coluna "Idade" em ordem crescente usando o método sort_values(). Configuramos o parâmetro ascending como True para classificar em ordem crescente. O parâmetro inplace é definido como True para modificar o DataFrame original.

Posso Classificar um Pandas DataFrame por Múltiplas Colunas?

Sim, é possível ordenar um DataFrame do Pandas por múltiplas colunas. Você precisa passar uma lista de nomes de colunas para o método sort_values(). Aqui está um exemplo:

import pandas as pd
 
dados = {'Nome': ['João', 'Ana', 'Bob', 'Lisa'],
        'Idade': [25, 30, 45, 23],
        'Salário': [50000, 60000, 80000, 40000]}
 
df = pd.DataFrame(dados)
 
# ordenar pela coluna Idade em ordem crescente e, em seguida, pela coluna Salário em ordem decrescente
df.sort_values(['Idade', 'Salário'], ascending=[True, False], inplace=True)
 
print(df)

Saída:

   Nome  Idade  Salário
3  Lisa   23   40000
0  João   25   50000
1  Ana   30   60000
2   Bob   45   80000

Neste exemplo, ordenamos o DataFrame pela coluna "Idade" em ordem crescente e, em seguida, pela coluna "Salário" em ordem decrescente. Passamos uma lista de nomes de colunas para o método sort_values() e uma lista de valores booleanos para o parâmetro ascending para especificar a direção de ordenação de cada coluna.

Como ordenar um DataFrame do Pandas pelo índice?

Também é possível ordenar um DataFrame do Pandas pelo seu índice usando o método sort_index(). Aqui está um exemplo:

import pandas as pd
 
dados = {'Nome': ['João', 'Ana', 'Bob', 'Lisa'],
        'Idade': [25, 30, 45, 23],
        'Salário': [50000, 60000, 80000, 40000]}
 
df = pd.DataFrame(dados)
 
# ordenar pelo índice em ordem decrescente
df.sort_index(ascending=False, inplace=True)
 
print(df)

Saída:

   Nome  Idade  Salário
3  Lisa   23   40000
2   Bob   45   80000
1  Ana   30   60000
0  João   25   50000

Neste exemplo, ordenamos o DataFrame pelo seu índice em ordem decrescente usando o método sort_index(). O parâmetro ascending é definido como False para ordenar em ordem decrescente.

Como ordenar um Pandas DataFrame por data?

Ordenar um Pandas DataFrame por data é uma operação comum em análise de séries temporais. Você pode usar o método sort_values() com o tipo de dados datetime. Aqui está um exemplo:

import pandas as pd
 
data = {'Data': ['2022-01-01', '2022-01-02', '2022-01-03', '2022-01-04'],
        'Vendas': [100, 200, 150, 300]}
 
df = pd.DataFrame(data)
 
# converter a coluna Data para o tipo de dados datetime
df['Data'] = pd.to_datetime(df['Data'])
 
# ordenar pela coluna Data em ordem crescente
df.sort_values('Data', ascending=True, inplace=True)
 
print(df)

Saída:

        Data  Vendas
0 2022-01-01     100
1 2022-01-02     200
2 2022-01-03     150
3 2022-01-04     300

Neste exemplo, criamos um DataFrame com uma coluna "Data" e uma coluna "Vendas". Usamos o método to_datetime() para converter a coluna "Data" para o tipo de dados datetime. Em seguida, usamos o método sort_values() para ordenar o DataFrame pela coluna "Data" em ordem crescente.

Pandas DataFrame Sort Values

O método sort_values() é o principal método para ordenar um Pandas DataFrame. Ele pode ordenar um DataFrame por uma única coluna ou várias colunas. Também suporta a ordenação por índices e por data.

Conclusão

Ordenar dados em um Pandas DataFrame é uma operação essencial para análise e visualização de dados. Neste tutorial, cobrimos como ordenar um Pandas DataFrame por coluna, várias colunas, índice e data. Discutimos também a diferença entre a ordenação em ordem crescente e decrescente. Ao dominar essas técnicas, você será capaz de manipular dados como um profissional.