python实现电影推荐

编程入门 行业动态 更新时间:2024-10-25 14:27:37

python实现<a href=https://www.elefans.com/category/jswz/34/1771381.html style=电影推荐"/>

python实现电影推荐

电影推荐程序

假设已有若干用户名字及其喜欢的电影清单,现有某用户,已看

过并喜欢一些电影,现在想找个新电影看看,又不知道看什么好。

思路:根据已有数据,查找与该用户爱好最相似的用户,也就是

看过并喜欢的电影与该用户最接近,然后从那个用户喜欢的电影

中选取一个当前用户还没看过的电影,进行推荐。--基于用户的

协同过滤算法

#我们首先需要造一点数据,模拟用户看的电影。

from random import randrange

data={‘user’+str(i):{‘film’+str(randrange(1,10)) for j in

range(randrange(15))} for i in range(10)}

#此处用到了列表推导式,关于列表推导式见下页

#randrange(n,m)随机输出n到m之间的整数,这里用了两次。一次代表这个人看的电影个数是随机的,第二个是看的电影是随机的

user = {'film1', 'film2', 'film3'}

similarUser,films=max(data.items(),key=lambda

item:(item[1]!=user,len(item[1]&user)))

#用len求出和user的相似度的列表,然后用max求最大相似的列表

print('历史数据:')

for u, f in data.items():

print(u, f, sep=':')

print('和您最相似的用户是:', similarUser)

print('Ta最喜欢看的电影是:', films)

print('Ta看过的电影中您还没看过的有:', films-user)

购物习惯推荐程序实现

#我们首先需要造一点数据,模拟顾客的商品清单。

from random import randrange#随机产生购买的商品清单

data={'user'+str(i):{'product'+str(randrange(1,7)) for j in range(randrange(1,4))}for i in range(10)}#待测用户曾经购买过的商品

#此处用到了列表推导式

#randrange(n,m)随机输出n到m之间的整数,这里用了两次。一次代表这个人买的东西的个数是随机的,第二个是买的商品是随机的

user={'product1','product5','product3'}#查找与带测用户最相似的用户和最喜欢购买的商品

similarUser,products=max(data.items(),key=lambda item:len(item[1]&user))

print("和你相似的用户是:",similarUser)

print("推荐商品如下:",products)

更多推荐

python实现电影推荐

本文发布于:2024-03-08 22:13:11,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1722599.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:电影   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!