Skip to content

Como Usar o Pandas Set Index

Updated on

A análise de dados em Python foi revolucionada pela biblioteca Pandas, com o DataFrame como sua estrutura de dados principal. Uma característica-chave dos DataFrames é a capacidade de manipular sua estrutura de índice. Este artigo tem como objetivo fornecer um guia abrangente sobre como usar a função set_index() do Pandas.

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

PyGWalker é um projeto Python de código aberto que pode ajudar a acelerar o fluxo de trabalhos de análise e visualização de dados diretamente em ambientes baseados em notebooks Jupyter.

PyGWalker (opens in a new tab) transforma seu DataFrame Pandas (ou Polars Dataframe) em uma interface de usuário 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 mesmo com esses notebooks 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 ⭐️ para o 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)

Entendendo o Índice no DataFrame do Pandas

Um índice em um DataFrame serve como rótulo para as linhas. Por padrão, o Pandas atribui valores inteiros começando em 0 como rótulos de linha. No entanto, existem cenários em que esses índices padrão não são suficientes e você pode precisar definir uma coluna específica ou uma combinação de colunas como o índice do seu DataFrame.

Definindo o índice usando set_index()

A função set_index() nos permite definir uma coluna como o índice de um DataFrame. A sintaxe básica é a seguinte:

DataFrame.set_index('Nome_da_Coluna')

Aqui, 'Nome_da_Coluna' é a coluna que você deseja definir como o índice.

Parâmetros-chave da função set_index()

A função set_index() tem vários parâmetros para fornecer flexibilidade aos usuários. Vamos nos aprofundar no entendimento de cada um deles.

  • keys: Isso pode ser o nome da coluna ou uma série Pandas, um índice ou um array NumPy. Este será o novo índice do seu DataFrame.
  • drop (Padrão: True): Se definido como True, a coluna que você está definindo como o novo índice será excluída do DataFrame.
  • append (Padrão: False): Se True, a coluna que você está definindo como o índice será anexada ao índice existente, criando um índice multinível.
  • inplace (Padrão: False): Se True, as alterações ocorrem diretamente no DataFrame e a função não retorna nada. Se False, um novo DataFrame com as alterações será retornado.
  • verify_integrity (Padrão: False): Verifica índices duplicados. Isso é útil quando você deseja garantir que os novos valores de índice sejam únicos.

Exemplo prático de uso do set_index()

Agora, vamos entender esses parâmetros com alguns exemplos práticos. Suponha que temos um DataFrame df como abaixo:

import pandas as pd
 
data = {
    'Name': ['John', 'Anna', 'Peter', 'Linda'],
    'Age': [28, 24, 32, 45],
    'City': ['Nova York', 'Londres', 'Berlim', 'Sydney']
}
 
df = pd.DataFrame(data)

Vamos definir 'Name' como nosso índice:

df.set_index('Name', inplace=True)

Isso definirá a coluna 'Name' como o índice do DataFrame e a removerá do DataFrame porque o parâmetro drop é verdadeiro por padrão.

Se quisermos definir a coluna 'Name' como o índice, mas também mantê-la no DataFrame, podemos fazer:

df.reset_index(inplace=True)
df.set_index('Name', drop=False, inplace=True)

Para criar um DataFrame multinível anexando 'City' ao índice 'Name' existente, use:

df.set_index(['Name', 'City'], inplace=True)

Observação: Antes de definir um novo índice, talvez seja necessário redefinir o índice usando df.reset_index(inplace=True) se você já o tiver definido anteriormente.

Conclusão

Neste artigo, aprendemos como usar o set_index() do Pandas para manipular a estrutura de índice do DataFrame de acordo com nossas necessidades. Ao entender seus principais parâmetros, podemos realizar efetivamente operações com base no índice e melhorar nossas capacidades de análise de dados. Seja você um iniciante ou um especialista em Pandas, saber como usar corretamente o set_index() é crucial. Agora é hora de usar o que você aprendeu em seus projetos!