Interrogare le raccomandazioni
Negli esercizi precedenti hai imparato a calcolare quotidianamente una tabella con le raccomandazioni sui corsi. Ora che questa tabella recommendations è nel data warehouse, puoi anche unirla rapidamente ad altre tabelle per creare funzionalità importanti per gli studenti di DataCamp, come email di marketing personalizzate, suggerimenti intelligenti e altro ancora.
In questo esercizio farai un assaggio di come la nuova tabella recommendations può essere utilizzata creando una funzione recommendations_for_user() che recupera automaticamente i corsi più consigliati per ogni ID utente in base a una specifica soglia di valutazione.
Questo esercizio fa parte del corso
Introduzione al Data Engineering
Istruzioni dell'esercizio
- Completa la query nella definizione della funzione
recommendations_for_user(). Dovrebbe fare la JOIN con la tabellacourses. - Completa la funzione
read_sql()inrecommendations_for_user(). L’argomentoparamsè incompleto: manca una soglia. - Esegui la funzione
recommendations_for_user()che hai definito nelle ultime istruzioni e osserva i risultati.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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))