Запрос рекомендаций
В предыдущих упражнениях вы научились рассчитывать таблицу с рекомендациями курсов на ежедневной основе. Теперь, когда таблица recommendations находится в хранилище данных, её можно быстро объединять с другими таблицами, чтобы создавать полезные функции для студентов DataCamp: персонализированные маркетинговые письма, интеллектуальные рекомендации и многое другое.
В этом упражнении вы увидите, как можно использовать созданную таблицу recommendations: для этого нужно написать функцию recommendations_for_user(), которая автоматически возвращает список наиболее подходящих курсов для конкретного пользователя по его ID и заданному порогу оценки.
Это упражнение является частью курса
Введение в дата-инжиниринг
Инструкции к упражнению
- Завершите запрос в определении функции
recommendations_for_user(). Он должен выполнять объединение с таблицейcourses. - Завершите вызов функции
read_sql()внутриrecommendations_for_user(). Аргументparamsне заполнен до конца: в нём не хватает порога оценки. - Запустите определённую вами функцию
recommendations_for_user()с помощью последних строк кода и изучите результаты.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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))