De aanbevelingen opvragen
In de vorige oefeningen heb je geleerd hoe je dagelijks een tabel met cursusaanbevelingen berekent. Nu deze recommendations-tabel in het datawarehouse staat, kun je hem snel joinen met andere tabellen om belangrijke features voor DataCamp-studenten te maken, zoals gepersonaliseerde marketingmails, slimme aanbevelingen voor studenten en andere mogelijkheden.
In deze oefening proef je hoe de nieuw aangemaakte recommendations-tabel gebruikt kan worden door een functie recommendations_for_user() te maken die automatisch de best aanbevolen cursussen per gebruikers-ID ophaalt voor een bepaalde waarderingsdrempel.
Deze oefening maakt deel uit van de cursus
Introductie tot Data Engineering
Oefeninstructies
- Maak de query af in de functie-definitie van
recommendations_for_user(). Deze moet joinen met decourses-tabel. - Vul de
read_sql()-functie inrecommendations_for_user()aan. Hetparams-argument is incompleet: de threshold ontbreekt. - Voer de door jou gedefinieerde functie
recommendations_for_user()uit in de laatste statements en bekijk de resultaten.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
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))