ComeçarComece de graça

Conectando-os!

Na última lição, você concluiu a maior parte do trabalho em sua tentativa de vincular restaurants e restaurants_new. Você gerou os diferentes pares de linhas potencialmente correspondentes, procurou por correspondências exatas entre as colunas cuisine_type e city, mas comparou strings semelhantes na coluna rest_name. Você armazenou o DataFrame que contém as pontuações em potential_matches.

Agora, finalmente, é hora de vincular os dois DataFrames. Para isso, você extrairá primeiro todos os índices de linha de restaurants_new que correspondam às colunas mencionadas acima em potential_matches. Em seguida, você fará um subconjunto de restaurants_new nesses índices e anexará os valores não duplicados a restaurants. Todos os DataFrames estão em seu ambiente, juntamente com pandas importado como pd.

Este exercício faz parte do curso

Limpeza de dados em Python

Ver curso

Instruções do exercício

  • Isole as instâncias de potential_matches em que a soma das linhas é maior ou igual a 3 usando o método .sum().
  • Extraia o segundo índice de coluna de matches, que representa os índices de linha do registro correspondente de restaurants_new usando o método .get_level_values().
  • Crie um subconjunto de restaurants_new para linhas que não estão em matching_indices.
  • Anexe non_dup a restaurants.

Exercício interativo prático

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

# Isolate potential matches with row sum >=3
matches = ____[____.___(____) >= ____]

# Get values of second column index of matches
matching_indices = matches.____.____(____)

# Subset restaurants_new based on non-duplicate values
non_dup = ____[~restaurants_new.index.____(____)]

# Append non_dup to restaurants
full_restaurants = restaurants.____(____)
print(full_restaurants)
Editar e executar o código