ComeçarComece gratuitamente

Tratamento de duplicatas

No último exercício, você conseguiu verificar que a nova atualização que alimenta ride_sharing contém um bug que gera linhas duplicadas completas e incompletas para alguns valores da coluna ride_id, com valores discrepantes ocasionais para as colunas user_birth_year e duration.

Neste exercício, você tratará essas linhas duplicadas, primeiro eliminando as duplicatas completas e, em seguida, mesclando as linhas duplicadas incompletas em uma só, mantendo a duration média e o user_birth_year mínimo para cada conjunto de linhas duplicadas incompletas.

Este exercício faz parte do curso

Limpeza de dados em Python

Ver Curso

Instruções de exercício

  • Elimine as duplicatas completas em ride_sharing e armazene os resultados em ride_dup.
  • Crie o dicionário statistics que contém a agregação mínimapara user_birth_year e a agregação média para duration.
  • Elimine as duplicatas incompletas agrupando-as por ride_id e aplicando a agregação em statistics.
  • Encontre duplicatas novamente e execute a instrução assert para verificar a desduplicação.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# Drop complete duplicates from ride_sharing
ride_dup = ____.____()

# Create statistics dictionary for aggregation function
statistics = {'user_birth_year': ____, 'duration': ____}

# Group by ride_id and compute new statistics
ride_unique = ride_dup.____('____').____(____).reset_index()

# Find duplicated values again
duplicates = ride_unique.____(subset = 'ride_id', keep = False)
duplicated_rides = ride_unique[duplicates == True]

# Assert duplicates are processed
assert duplicated_rides.shape[0] == 0
Editar e executar código