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!
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.