Средний рейтинг курса
Один из эффективных способов рекомендовать курсы — предлагать те, что получили наиболее высокие оценки: студенты DataCamp, как правило, ценят курсы, высоко оценённые другими учащимися.
В этом упражнении вы доработаете функцию преобразования transform_avg_rating(), которая агрегирует данные об оценках с помощью метода .groupby() из pandas. Цель — получить DataFrame с двумя столбцами: идентификатором курса и его средним рейтингом:
| course_id | avg_rating |
|---|---|
| 123 | 4.72 |
| 111 | 4.62 |
| … | … |
Вы завершите реализацию этой функции и применёте её к необработанным данным об оценках, извлечённым с помощью вспомогательной функции extract_rating_data(), которая получает оценки курсов из таблицы rating.
Это упражнение является частью курса
Введение в дата-инжиниринг
Инструкции к упражнению
- Доработайте функцию
transform_avg_rating(): выполните группировку по столбцуcourse_idи вычислите среднее значение столбцаrating. - Используйте
extract_rating_data()для извлечения необработанных данных об оценках. Передайте ей в качестве аргумента объект подключения к базе данныхdb_engines. - Примените функцию
transform_avg_rating()к извлечённым данным об оценках.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Complete the transformation function
def transform_avg_rating(rating_data):
# Group by course_id and extract average rating per course
avg_rating = rating_data.____('____').rating.____()
# Return sorted average ratings per course
sort_rating = avg_rating.sort_values(ascending=False).reset_index()
return sort_rating
# Extract the rating data into a DataFrame
rating_data = extract_rating_data(____)
# Use transform_avg_rating on the extracted data and print results
avg_rating_data = transform_avg_rating(____)
print(avg_rating_data)