Como achar e eliminar duplicatas com Pandas
- #Python
Introdução
A qualidade dos dados desempenha um papel crucial na análise e nas decisões baseadas em dados. Neste artigo, exploraremos métodos para identificar e corrigir inconsistências nos dados usando Pandas.
Identificação de Dados Inconsistentes
1. Verificação de Duplicatas
Duplicatas são entradas repetidas nos dados que podem distorcer análises. Podemos identificá-las da seguinte forma:
duplicatas = df.duplicated()
O código retorna True para duplicatas e False para não duplicatas.
Atenção! Para usar o método .duplicated( ) em um DataFrame, você precisa ter o Pandas instalado no seu ambiente Python. O Pandas é uma biblioteca extremamente popular e poderosa para análise e manipulação de dados que oferece diversas funcionalidades para trabalhar com estruturas de dados tabulares.
Nós podemos recuperar as duplicatas com o código à seguir.
df[duplicatas]
Algumas duplicatas não são completamente iguais, para isso podemos usar os parâmetros do método duplicated.
subset: lista de nomes de colunas onde procurar as duplicatas;
keep: se manter ou não as duplicatas, pode assumir valores como "first", "last" ou False;
duplicatas = df.duplicated(subset = column names, keep = False)
2. Tratamento de Duplicatas
Existem várias abordagens para lidar com duplicatas, como remoção ou marcação delas, dependendo do contexto dos dados, como o método a seguir:
df_limpo = df.drop_duplicates()
Assim como o método duplicated, drop_duplicates aceita argumentos subset e keep, além do parâmetro inplace que determina que as colunas sejam alocadas diretamente no DataFrame sem criar um novo objeto (True).
Se as duplicatas forem completamente iguais o método drop_duplicates já é suficiente, pois mantém somente uma das entradas. Mas se as entradas contém valores diferentes em algumas colunas, se faz necessário utilizar métodos estatísticos para combinar os dois valores. Seja o método max, min ou mean. Nós podemos fazer isso facilmente utilizando o método .groupby e .agg:
column_names = ['first_name', 'last_name', 'address']
summaries = {'height': 'max', 'wheight': 'mean'}
df = df.groupby(by = column_names).agg(summaries).reset_index()
Conclusão
Garantir a qualidade dos dados através da identificação e correção de inconsistências é essencial para análises confiáveis e insights precisos. Ao aplicar essas técnicas com Python, você estará melhor equipado para enfrentar desafios comuns na manipulação de dados.
Referências
DataCamp. Título: Cleaning Data In Python. Disponível em: https://campus.datacamp.com/courses/cleaning-data-in-python/common-data-problems-1?ex=8 Acesso em: 10/07/2024