Método Reindex do DataFrame Pandas

Beginner

Introdução

Neste tutorial, aprenderemos sobre o método DataFrame.reindex() do Python pandas. Exploraremos como alterar o índice e as colunas de um DataFrame usando este método. O método DataFrame.reindex() permite reconciliar o DataFrame com um novo índice, preenchendo valores nulos nas localizações que não possuem valor no índice anterior.

Dicas para a VM

Após a inicialização da VM, clique no canto superior esquerdo para mudar para a aba Notebook e acessar o Jupyter Notebook para praticar.

Às vezes, pode ser necessário aguardar alguns segundos para que o Jupyter Notebook termine de carregar. A validação das operações não pode ser automatizada devido a limitações no Jupyter Notebook.

Se você enfrentar problemas durante o aprendizado, sinta-se à vontade para perguntar ao Labby. Forneça feedback após a sessão, e resolveremos o problema prontamente para você.

Importar a biblioteca pandas e criar um DataFrame

Vamos começar importando a biblioteca pandas e criando um DataFrame. Usaremos este DataFrame para demonstrar o método DataFrame.reindex().

import pandas as pd

## Create a DataFrame
df = pd.DataFrame([[1, 6, 2], [3, 4, 6], [12, 1, 0]], columns=['A', 'B', 'C'], index=['index_1', 'index_2', 'index_3'])

Reindexar o DataFrame usando o parâmetro index

Para reindexar o DataFrame alterando o índice, passe uma lista de novos rótulos de índice para o método DataFrame.reindex(). Quaisquer rótulos de índice que não estejam presentes no DataFrame original serão preenchidos com valores NaN.

## Reindex the DataFrame with a new index
new_index = ['index_1', 'index_2', 'index_4']
reindexed_df = df.reindex(index=new_index)

print(reindexed_df)

Output:

         A    B    C
index_1  1.0  6.0  2.0
index_2  3.0  4.0  6.0
index_4  NaN  NaN  NaN

Reindexar o DataFrame usando o parâmetro columns

Da mesma forma, você pode reindexar o DataFrame alterando as colunas usando o método DataFrame.reindex(). Forneça uma lista de novos rótulos de coluna para o parâmetro columns. Quaisquer colunas que não estejam presentes no DataFrame original serão preenchidas com valores NaN.

## Reindex the DataFrame with new columns
new_columns = ['A', 'C', 'D']
reindexed_df = df.reindex(columns=new_columns)

print(reindexed_df)

Output:

         A    C    D
index_1  1.0  2.0  NaN
index_2  3.0  6.0  NaN
index_3  12.0  0.0  NaN

Preencher valores nulos usando o parâmetro fill_value

Se você deseja preencher os valores nulos com um valor específico, pode usar o parâmetro fill_value do método DataFrame.reindex(). Forneça o valor desejado a ser usado para preencher os valores nulos.

## Reindex the DataFrame and fill null values with 2
new_index = ['index_1', 'index_2', 'index_4']
reindexed_df = df.reindex(index=new_index, fill_value=2)

print(reindexed_df)

Output:

         A  B  C
index_1  1  6  2
index_2  3  4  6
index_4  2  2  2

Resumo

Neste tutorial, aprendemos como reindexar um DataFrame usando o método DataFrame.reindex() no pandas. Exploramos como alterar o índice e as colunas de um DataFrame, preencher valores nulos e especificar um valor de preenchimento para os valores nulos. Saber como reindexar corretamente um DataFrame é útil para manipular e alinhar dados no pandas.