import pandas as pd from numpy import * movies=pd.io.parsers.read_csv('F:\python练习/1movie_metadata.csv') movies.head() movies['genres'].head() from sklearn.feature_extraction.text import TfidfVectorizer tfidf=TfidfVectorizer(stop_words='english') movies['genres']=movies['genres'].fillna('') tfidf_matrix=tfidf.fit_transform(movies['genres']) tfidf_matrix.shape from sklearn.metrics.pairwise import linear_kernel cosine_sim=linear_kernel(tfidf_matrix,tfidf_matrix) indices=pd.Series(movies.index,index=movies['movie_title']).drop_duplicates() def get_recommendation(title,consine_sim=cosine_sim): idx=indices[title] sim_scores=list(enumerate(cosine_sim[idx])) sim_scores=sorted(sim_scores,key=lambda x:x[1],reverse=True) sim_scores=sim_scores[1:11] movie_indices=[i[0]for i in sim_scores] return print(movies['movie_title'].iloc[movie_indices]) get_recommendation('Avatar?') 几个参数
时间: 2024-04-13 10:25:16 浏览: 107
python数据分析与可视化 import pandas as pd import numpy as np import m
这段代码中涉及到几个参数:
1. `stop_words='english'`:在使用TfidfVectorizer时,将英语中的常用词作为停用词,不进行考虑。
2. `fillna('')`:将数据框中的缺失值填充为一个空字符串。
3. `cosine_sim=linear_kernel(tfidf_matrix,tfidf_matrix)`:计算两个向量之间的余弦相似度,其中`tfidf_matrix`是通过TfidfVectorizer生成的特征矩阵。
4. `sim_scores=sim_scores[1:11]`:选择与输入电影最相似的前10个电影。
以上是这段代码中的几个参数的含义。
阅读全文