CommencerCommencer gratuitement

Compenser des données incomplètes

Dans la plupart des jeux de données, la majorité des utilisateurs n’auront évalué qu’un petit nombre d’éléments. Comme vous l’avez vu dans le dernier exercice, la façon dont vous traitez les utilisateurs qui n’ont pas de note pour un élément peut fortement influencer la validité de vos modèles.

Dans cet exercice, vous allez compléter les données manquantes avec des informations qui ne biaisent pas les données dont vous disposez.

Vous allez calculer la note moyenne que chaque utilisateur a donnée sur l’ensemble de ses évaluations, puis utiliser cette moyenne pour recentrer les notes des utilisateurs autour de zéro. Enfin, vous remplirez les valeurs vides par des zéros, qui constituent désormais une note neutre, minimisant l’impact sur leur profil global tout en permettant la comparaison entre utilisateurs.

user_ratings_table, avec une ligne par utilisateur, a été chargé pour vous.

Cet exercice fait partie du cours

Créer des moteurs de recommandation en Python

Afficher le cours

Instructions

  • Trouvez la moyenne des notes données par chaque utilisateur dans user_ratings_table et enregistrez-la sous le nom avg_ratings.
  • Soustrayez la moyenne de chaque ligne à la ligne correspondante dans user_ratings_table, et enregistrez le résultat sous user_ratings_table_centered.
  • Remplissez les valeurs vides du nouveau user_ratings_table_centered avec des zéros.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Get the average rating for each user 
avg_ratings = user_ratings_table.____(axis=____)

# Center each users ratings around 0
user_ratings_table_centered = user_ratings_table.____(____, axis=0)

# Fill in the missing data with 0s
user_ratings_table_normed = user_ratings_table_centered.____(____)
Modifier et exécuter le code