使用推荐转换
在前面的几个练习中,您计算了每门课程的平均评分,并清洗了一些课程数据。现在,您将使用这些数据为 DataCamp 学生生成可行的课程推荐。
提醒一下,生成推荐的决策规则如下:
- 使用学生评分最多的技术领域。
- 排除学生已经评分过的课程。
- 从符合条件的课程中找到评分最高的 3 门课程。
为了产出最终的推荐结果,您将使用课程的平均评分,以及每位用户可推荐课程的列表,分别存储在 avg_course_ratings 和 courses_to_recommend 中。您需要完成 transform_recommendations() 函数,将这两个 DataFrame 合并,并为每位用户找出评分最高的 3 门课程进行推荐。
本练习是课程的一部分
Data Engineering 入门
练习说明
- 完成
transform_recommendations()函数: - 将
course_to_recommend与avg_course_ratings合并。 - 按用户 ID 分组并依据
rating排序结果。 - 取前 3 行,并按用户 ID 排序显示。
- 使用合适的参数调用您刚定义的
transform_recommendations()函数,将每位用户的推荐结果存入变量recommendations。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Complete the transformation function
def transform_recommendations(avg_course_ratings, courses_to_recommend):
# Merge both DataFrames
merged = courses_to_recommend.____(____)
# Sort values by rating and group by user_id
grouped = merged.sort_values("____", ascending=False).groupby("____")
# Produce the top 3 values and sort by user_id
recommendations = grouped.head(____).sort_values("____").reset_index()
final_recommendations = recommendations[["user_id", "course_id","rating"]]
# Return final recommendations
return final_recommendations
# Use the function with the predefined DataFrame objects
recommendations = ____(____, ____)