代码采用基于用户的协同过滤算法,也就是根据用户喜好来确定与当前用户最相似的用户,然后再根据最相似用户的喜好为当前用户进行推荐。
代码采用字典来存放数据,格式为{用户1:{电影名称1:打分1, 电影名称2:打分2,...}, 用户2:{...}}。
本文关键代码是调用Python内置函数min()和max()的两行。为防止看错行,直接贴上代码截图:
运行结果与分析1,其中输出结果第一部分的格式为与当前用户共同打分过的电影数量:与当前用户打分的欧几里得距离:该用户打分情况。
在这一组数据中,与当前用户共同打分过的电影数量最多的是user3,所以根据user3的打分结果对当前用户进行推荐。
运行结果与分析2:
在这一组数据中,与当前用户共同打分过的电影数量一样多的有user4、user5和user6,但是与当前用户最接近的是user5,所以根据user5的打分结果对当前用户进行推荐。