CommencezCommencez gratuitement

Les relier ensemble !

Dans la dernière leçon, vous avez accompli l’essentiel du travail pour lier restaurants et restaurants_new. Vous avez généré différents jumelages de lignes potentiellement correspondantes, cherché des correspondances exactes entre les colonnes cuisine_type et city, et comparé les chaînes similaires dans la colonne rest_name. Vous avez stocké le DataFrame contenant les scores dans potential_matches.

Il est maintenant temps de lier les deux DataFrames. Pour ce faire, vous allez d’abord extraire de potential_matches tous les indices de lignes de restaurants_new qui correspondent selon les colonnes mentionnées ci-dessus. Ensuite, vous allez filtrer restaurants_new avec ces indices, puis concaténer les valeurs non dupliquées avec restaurants. Tous les DataFrames sont déjà dans votre environnement, et pandas est importé sous le nom pd.

Cette activité fait partie du cours

Nettoyage des données en Python

Voir le cours

Instructions de l’exercice

  • Isolez les instances de potential_matches où la somme par ligne est supérieure ou égale à 3 en utilisant la méthode .sum().
  • Extrayez le deuxième niveau d’index de colonnes à partir de matches, qui représente les indices de lignes correspondantes provenant de restaurants_new, à l’aide de la méthode .get_level_values().
  • Filtrez restaurants_new pour conserver les lignes qui ne sont pas dans matching_indices.
  • Concaténez restaurants et non_dup.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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)
Modifier et exécuter le code