Collegali insieme!
Nell'ultima lezione hai completato la parte principale del lavoro per collegare restaurants e restaurants_new. Hai generato le diverse coppie di righe potenzialmente corrispondenti, cercato corrispondenze esatte tra le colonne cuisine_type e city, ma confrontato stringhe simili nella colonna rest_name. Hai memorizzato il DataFrame con i punteggi in potential_matches.
Ora è finalmente il momento di collegare entrambi i DataFrame. Lo farai estraendo prima tutti gli indici di riga di restaurants_new che corrispondono tra le colonne citate sopra da potential_matches. Poi sotto-selezionerai restaurants_new su questi indici e, infine, concatenerai i valori non duplicati con restaurants. Tutti i DataFrame sono nel tuo ambiente, insieme a pandas importato come pd.
Questo esercizio fa parte del corso
Pulizia dei dati in Python
Istruzioni dell'esercizio
- Isola le istanze di
potential_matchesin cui la somma di riga è maggiore o uguale a 3 usando il metodo.sum(). - Estrai il secondo indice di colonna da
matches, che rappresenta gli indici di riga dei record corrispondenti darestaurants_new, usando il metodo.get_level_values(). - Sotto-seleziona
restaurants_newper le righe che non sono inmatching_indices. - Concatena
restaurantsenon_dup.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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)