Método Compare do DataFrame Pandas

Beginner

Introdução

Neste laboratório, você aprenderá como usar o método compare() na biblioteca pandas para comparar dois DataFrames e identificar suas diferenças. O método compare() é uma maneira conveniente de encontrar discrepâncias entre dois DataFrames, mostrando os valores diferentes em uma comparação lado a lado.

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 as bibliotecas necessárias

Primeiro, você precisa importar a biblioteca pandas para usar o método compare(). Execute o seguinte código:

import pandas as pd

Criar os DataFrames

Em seguida, você criará dois DataFrames para comparar. Cada DataFrame deve ter os mesmos rótulos, mas pode ter valores diferentes. Execute o seguinte código para criar os DataFrames:

df1 = pd.DataFrame([['Abhishek',100,'Science',90], ['Anurag',101,'Science',85]], columns=['Name', 'Roll No', 'Subject', 'Marks'])
df2 = pd.DataFrame([['Abhishek',100,'Maths',95], ['Anurag',101,'Maths',80]], columns=['Name', 'Roll No', 'Subject', 'Marks'])

Comparar os DataFrames

Agora, você pode usar o método compare() para comparar os dois DataFrames e exibir as diferenças. O método compara os valores entre os dois DataFrames e retorna um novo DataFrame com os valores diferentes lado a lado. Execute o seguinte código:

differences = df1.compare(df2)
print(differences)

Modificar os DataFrames e comparar novamente

Você pode modificar os valores em qualquer um dos DataFrames e compará-los novamente para ver as diferenças atualizadas. Execute o seguinte código para modificar um valor no segundo DataFrame:

df2.at[1, 'Marks'] = 85

Em seguida, execute o código de comparação da Etapa 3 novamente para ver as diferenças atualizadas.

Especificar o eixo de alinhamento e a inclusão de valores iguais

Você também pode especificar o eixo de alinhamento e a inclusão de valores iguais no DataFrame resultante. Por padrão, o eixo de alinhamento é definido como 1 (colunas) e os valores iguais não são incluídos. Execute o seguinte código para demonstrar essas opções:

differences_axis_0 = df1.compare(df2, align_axis=0)
differences_keep_equal = df1.compare(df2, keep_equal=True)

Resumo

Neste laboratório, você aprendeu como usar o método compare() na biblioteca pandas para comparar dois DataFrames. Este método permite identificar diferenças entre DataFrames, exibindo os valores diferentes lado a lado. Você também aprendeu como especificar o eixo de alinhamento e a inclusão de valores iguais no DataFrame resultante. Agora você pode usar este conhecimento para comparar e analisar facilmente as diferenças entre conjuntos de dados.