Interroger les recommandations
Dans les exercices précédents, vous avez appris à calculer chaque jour une table de recommandations de cours. Maintenant que cette table recommendations est dans l'entrepôt de données, vous pouvez aussi la joindre rapidement à d'autres tables afin de créer des fonctionnalités importantes pour les étudiantes et étudiants de DataCamp, comme des courriels promotionnels personnalisés, des recommandations intelligentes et d'autres fonctionnalités.
Dans cet exercice, vous allez voir comment la nouvelle table recommendations peut être utilisée en créant une fonction recommendations_for_user() qui récupère automatiquement les cours les mieux recommandés selon l'identifiant d'utilisateur et pour un seuil de cote donné.
Cette activité fait partie du cours
Introduction à l'ingénierie des données
Instructions de l’exercice
- Complétez la requête dans la définition de la fonction
recommendations_for_user(). Elle doit faire une jointure avec la tablecourses. - Complétez l'appel à
read_sql()dansrecommendations_for_user(). L'argumentparamsest incomplet : il manque un seuil. - Exécutez la fonction
recommendations_for_user()que vous avez définie dans les dernières instructions et observez les résultats.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
def recommendations_for_user(user_id, threshold=4.5):
# Join with the courses table
query = """
SELECT title, rating FROM recommendations
INNER JOIN ____ ON courses.course_id = recommendations.course_id
WHERE user_id=%(user_id)s AND rating>%(threshold)s
ORDER BY rating DESC
"""
# Add the threshold parameter
predictions_df = pd.read_sql(query, db_engine, params = {"user_id": user_id,
"____": ____})
return predictions_df.title.values
# Try the function you created
print(recommendations_for_user(12, 4.65))