标准化您的数据
在使用奇异值分解(SVD)求评分矩阵的因子之前,您需要先对其进行"去均值"或中心化处理,即从每一行的每个数值中减去该行的平均值。
在本练习中,您将开始整理之前使用的电影评分 DataFrame,以便能够执行奇异值分解。
user_ratings_df 按用户为行、按电影为列,已为您加载。
本练习是课程的一部分
用 Python 构建推荐引擎
练习说明
- 计算每位用户在其看过的所有电影上的平均评分,并将结果保存为
avg_ratings。 - 从各自的行中减去对应的行平均值,并将结果保存为
user_ratings_centered。 - 最后,将
user_ratings_centered中所有缺失值填充为 0。 - 打印
user_ratings_centered中每一列的平均值,以展示数据已完成去均值处理。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Get the average rating for each user
avg_ratings = user_ratings_df.____(axis=1)
# Center each user's ratings around 0
user_ratings_centered = user_ratings_df.____(____, axis=1)
# Fill in all missing values with 0s
user_ratings_centered.____(0, inplace=True)
# Print the mean of each column
print(user_ratings_centered.____(axis=1))