资源简介
可以用,真的可以用。python语言。里面有四个数据包,算法所需要的基础数据。强调真的可以用。
代码片段和文件信息
“““
基于内容的推荐算法。
所有评级都包含在“ratings.csv”文件中。这个文件在头行之后的每一行表示一个用户对一个电影的评级,格式如下:
userIdmovieId评级时间戳
这个文件中的行首先由userId排序,然后在user中由movieId排序。
评级是在5星的范围内进行的,以半星为单位(0.5星- 5.0星)。
所有标签都包含在“tag .csv”文件中。文件头行之后的每一行表示一个用户应用到一个电影上的一个标签,格式如下:
userIdmovieId标签
这个文件中的行首先由userId排序,然后在user中由movieId排序。
标签是用户生成的关于电影的元数据。每个标签通常是一个单词或短短语。特定标记的含义、
电影信息包含在“movi.csv”文件中。这个文件在头行之后的每一行都代表一个电影,格式如下:
movieId、标题、类型
可以用于链接到其他电影数据来源的标识符包含在“links.csv”文件中。这个文件在头行之后的每一行都代表一个电影,格式如下:
movieId、imdbId tmdbId
“““
from collections import Counter defaultdict
import math
import numpy as np
import os
import pandas as pd
import re
from scipy.sparse import csr_matrix
import urllib.request
import zipfile
#def download_data():
#“““下载和解压数据。
#“““
#url = ‘https://www.dropbox.com/s/h9ubx22ftdkyvd5/ml-latest-small.zip?dl=1‘
#urllib.request.urlretrieve(url ‘ml-latest-small.zip‘)
#zfile = zipfile.ZipFile(‘ml-latest-small.zip‘)
#zfile.extractall()
#zfile.close()
def tokenize_string(my_string):
“““ 您应该在tokenize函数中使用这个函数。
“““
return re.findall(‘[\w\-]+‘ my_string.lower())
def tokenize(movies):
“““在电影Dataframe添加一个新的列,标头是“token”。
这将包含一个字符串列表,每个标记提取一个
从每部电影的“类型”领域。使用上面的tokenize_string方法。
注:可直接修改影片参数;不需要
一个新的副本。
参数:
电影……看电影Dataframe
返回:
电影Dataframe,增加了一个名为“token”的新列。
>>> movies = pd.Dataframe([[123 ‘Horror|Romance‘] [456 ‘Sci-Fi‘]] columns=[‘movieId‘ ‘genres‘])
>>> movies = tokenize(movies)
>>> movies[‘tokens‘].tolist()
[[‘horror‘ ‘romance‘] [‘sci-fi‘]]“““
tokenize = [tokenize_string(movies[‘genres‘][i]) for i in range(len(movies)) ]
movies.insert(len(movies.columns) “tokens“tokenize allow_duplicates=False)
return movies
pass0
def tf(idterm_frequency):
return term_frequency[d][i]
def df(idoc_frequency):
return doc_frequency[i]
def max_ktf(dterm_frequency):
return term_frequency[d].most_common(1)[0][1]
def tfidf(idterm_frequencydoc_frequencyN):
return (1.0*tf(idterm_frequency)) /max_ktf(dterm_frequency) * math.log10(N/df(idoc_frequency))
# In[38]:
def featurize(movies):
“““
添加一个新的列到电影features与标题‘功能‘。
每一行将包含一个形状的csr_matrix (1 num_features)。每一个
这个矩阵中的条目将包含术语的tf-idf值,如
在类中定义:
tfidf(i d):=特遣部队(i d)/ max_k特遣部队(kd)* log10(N / df(i))
地点:
i是一项
d是文档(电影)
tf(i d)是文档d中第i项的频率
max_k tf(k d)是文档d中任何术语的最大频率
N是文档(电影)的数量
df(i)是包含第i项的唯一文件的数量
参数:
电影……看电影features
返回:
一个元组其中包含:
- Dataframe的电影。已被修改为包含一个名为“features”的列。
- vocab,从term到int的一种字典。确保vocab按照a2的字母顺序排列(例如:{‘aardvark‘: 0, ‘boy‘: 1,…})
”“”
“““
###TODO
N = len(movies)
doc_frequency= defaultdict(int)
term_frequency = {}
for i in range(len(movies)):
count = Counter(movies[‘tokens‘][i])
term_frequency[i] = count
for j in count:
doc_frequency[j] += 1
vocab = {}
idx = 0
for i in sorted(doc_frequency):
vocab[i] = idx
idx += 1
csr_list =[]
for doc in sorted(term_frequency):
data = []
column = []
for term i
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 294 2018-10-31 21:47 Movie-recommendation-system-master\.idea\misc.xm
文件 327 2018-10-31 21:47 Movie-recommendation-system-master\.idea\modules.xm
文件 563 2018-10-31 21:50 Movie-recommendation-system-master\.idea\Movie-recommendation-system-master.iml
文件 16779 2018-11-13 21:42 Movie-recommendation-system-master\.idea\workspace.xm
文件 8535 2018-11-02 11:56 Movie-recommendation-system-master\a3.py
文件 174246 2017-09-20 05:05 Movie-recommendation-system-master\ml-latest-small\li
文件 449264 2017-09-20 05:05 Movie-recommendation-system-master\ml-latest-small\movies.csv
文件 2338261 2017-09-20 05:05 Movie-recommendation-system-master\ml-latest-small\ratings.csv
文件 40605 2017-09-20 05:05 Movie-recommendation-system-master\ml-latest-small\tags.csv
目录 0 2018-11-13 15:05 Movie-recommendation-system-master\.idea\inspectionProfiles
目录 0 2018-11-13 21:42 Movie-recommendation-system-master\.idea
目录 0 2018-11-02 10:45 Movie-recommendation-system-master\ml-latest-small
目录 0 2018-11-13 22:02 Movie-recommendation-system-master
----------- --------- ---------- ----- ----
3028874 13
- 上一篇:python2.7sc
ript目录 - 下一篇:中点画圆算法pyqt5实现.zip
相关资源
-
python2.7sc
ript目录 - 提取获取到的人脸图像的特征
- Python二十多种常用图像处理方法集成
- BP神经网络(马疝病数据集).zip
- 指纹图像增强源码.rar
- 灰狼算法函数极值寻优matlab与python版
- AI智能五子棋Python代码
- 数学建模-社会力模型-python代码实现
- ipython/jupyter notebook解决浏览器空白的
- 去雨算法python代码
- Python项目实战
- 小甲鱼Python零基础免费全套视频教学
- 正则表达式到dfagraphviz输出图像
- 传智播客python最新视频.txt
- Python升级3.6强力Django杀手级Xadmin打造
- Python实现PCA
- KMeans python 代码
- Python淘宝评论爬取
- py新浪微博爬虫通过修改最后的uid值即
- python基础教程第三版源代码
- PCV---python工具包.zip
- 去停用词、测试数据
- 高效爬取微博数据python3实现
- 基于vggnet卷积神经网络的图像风格迁
- pyton 实现学生信息管理系统
- 数字图像处理Python制作简易软件系统
- Python爬取b站视频弹幕并可视化案例
- python实现类似于QQ或MSN的聊天系统
- sm4国密算法python实现
- python面试题100道
评论
共有 条评论