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. Depois, você vai pegar um subconjunto de restaurants_new nesses índices e, por fim, juntar os valores que não estão duplicados com 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.
  • Junta restaurants e non_dup.

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.____(____)]

# Concatenate restaurants and non_dup
full_restaurants = pd.____([____, ____])
print(full_restaurants)
Editar e executar o código