ÎncepețiÎncepe gratuit

Hai să le unim!

În ultima lecție, ai finalizat cea mai mare parte a lucrului de legare a seturilor de date restaurants și restaurants_new. Ai generat perechile de rânduri potențial identice, ai căutat potriviri exacte în coloanele cuisine_type și city, dar ai comparat șiruri similare în coloana rest_name. Ai stocat DataFrame-ul cu scorurile în potential_matches.

Acum a venit în sfârșit momentul să legi cele două DataFrame-uri. Vei face asta extragând mai întâi toți indecșii de rând din restaurants_new care se potrivesc în coloanele menționate mai sus, pe baza potential_matches. Apoi vei selecta din restaurants_new rândurile corespunzătoare acestor indecși și, în final, vei concatena valorile non-duplicate cu restaurants. Toate DataFrame-urile sunt disponibile în mediul tău, iar pandas este importat ca pd.

Acest exercițiu face parte din cursul

Curățarea datelor în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Izolează instanțele din potential_matches unde suma pe rând este mai mare sau egală cu 3, folosind metoda .sum().
  • Extrage al doilea index de coloană din matches, care reprezintă indecșii de rând ai înregistrărilor potrivite din restaurants_new, folosind metoda .get_level_values().
  • Selectează din restaurants_new rândurile care nu se află în matching_indices.
  • Concatenează restaurants și non_dup.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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)
Editează și rulează codul