读取数据并构建序列字典
# - 功能:使用自然数对 movies.dat 中的 movieid 进行重编码 返回值:movieid 到编码 id 的字典
def movie_map(file='movies.dat'):
movies = read_csv(file, sep='::', header=None,engine='python')
value = movies[0].unique()
index = range(movies[0].nunique())
return dict(zip(value,index))
d = movie_map()
d[520]
train_test_split 这个函数
from sklearn.model_selection import train_test_split
def train_test_split(ratings,test_size=0.2):
np.random.seed(2020) #根据随机数种子,将x索引打乱
indices=np.random.permutation(len(ratings))
#根据设定的测试集样本比例,划分训练集、测试集
cut=int(len(ratings)*(1-test_size))
x_train=ratings[indices[:cut]]
x_test=ratings[indices[cut:]]
return x_train,x_test
train_mat, test_mat = train_test_split(ratings)
train_mat.shape[0], test_mat.shape[0]