利用python写一个音乐推荐系统
时间: 2023-07-25 19:07:21 浏览: 113
好的,下面是一个简单的音乐推荐系统的Python代码示例:
```python
import pandas as pd
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
# 读取音乐数据
df = pd.read_csv('music.csv')
# 使用TF-IDF向量化音乐数据
tfidf = TfidfVectorizer()
tfidf_matrix = tfidf.fit_transform(df['description'])
# 计算音乐之间的余弦相似度
cosine_sim = cosine_similarity(tfidf_matrix, tfidf_matrix)
# 定义一个函数来获取最相似的音乐
def get_similar_music(title, cosine_sim=cosine_sim, df=df):
index = df[df['title'] == title].index[0]
sim_scores = list(enumerate(cosine_sim[index]))
sim_scores = sorted(sim_scores, key=lambda x: x[1], reverse=True)
sim_scores = sim_scores[1:11]
music_indices = [i[0] for i in sim_scores]
return df['title'].iloc[music_indices]
# 通过输入音乐名字获取相似的音乐
print(get_similar_music('Shape of You'))
```
这个代码使用TF-IDF向量化了音乐数据,并计算了音乐之间的余弦相似度。然后定义了一个函数来获取与给定音乐最相似的音乐。最后,我们可以使用该函数来获取与“Shape of You”最相似的10首音乐。