请帮我写一个基于内容推荐电影的python代码
以下是一个基于内容推荐电影的Python代码示例:
import pandas as pd
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import linear_kernel
# 读取电影数据集
movies = pd.read_csv('movies.csv')
# 创建TF-IDF向量化器
tfidf = TfidfVectorizer(stop_words='english')
# 对电影描述进行向量化
movies['overview'] = movies['overview'].fillna('')
tfidf_matrix = tfidf.fit_transform(movies['overview'])
# 计算电影之间的余弦相似度
cosine_sim = linear_kernel(tfidf_matrix, tfidf_matrix)
# 根据输入的电影标题,返回推荐的电影列表
def get_recommendations(title, cosine_sim=cosine_sim):
# 获取电影标题对应的索引
idx = movies[movies['title'] == title].index[0]
# 计算电影与其他电影的相似度得分
sim_scores = list(enumerate(cosine_sim[idx]))
# 根据相似度得分进行排序
sim_scores = sorted(sim_scores, key=lambda x: x[1], reverse=True)
# 获取前10个相似电影的索引
movie_indices = [i[0] for i in sim_scores[1:11]]
# 返回推荐的电影标题
return movies['title'].iloc[movie_indices]
# 输入电影标题,获取推荐的电影
movie_title = input("请输入电影标题:")
recommendations = get_recommendations(movie_title)
print("推荐的电影列表:")
print(recommendations)
请注意,代码中使用了一个名为"movies.csv"的电影数据集,其中包含了电影的标题和描述信息。你可以根据自己的需求替换成自己的数据集。此外,代码仅仅使用了电影的描述信息进行推荐,你可以根据需要扩展到其他特征或者改进推荐算法
原文地址: https://www.cveoy.top/t/topic/iCJe 著作权归作者所有。请勿转载和采集!