movielens处理代码

这一篇博客主要记录自己的代码是如何对movielens数据集进行处理的,想要达到的目的很简单,就是得到一个txt文件,形式如下:第一列为user,第二列为item,第三列为rating。

形如:

要达到这样的目的该怎么处理呢,很简单。

  1. 到达movielens的下载官网,https://grouplens.org/datasets/movielens/,选择你要下载的数据集大小类型。
  2. 其中,有csv的,有dat的。怎么处理呢?由于我只需要用户项目和评分信息我只对ratings进行处理。
  3. 如果是csv,把代码文件与csv文件放在同一个目录下,代码如下:
  4. import math
    import random
    from numpy import *
    import numpy as np
    import sys
    import os
    from pandas import Series,DataFrame
    import pandas as pd
    from sklearn.model_selection import train_test_split
    import csv
    
    
    ratings_list = csv.reader(open('ratings.csv','r'))
    
    
    
    rating_file = []
    for item in ratings_list:
        rating_file.append(str(item[0])+' '+str(item[1])+' '+str(item[2])+'\n')
        
    filename = 'ratings.txt'
    with open(filename,'w') as f:
        for i in range(len(rating_file)):
            f.write(rating_file[i])

    如果是dat,代码如下: 

    import math
    import random
    from numpy import *
    import numpy as np
    import sys
    import os
    from pandas import Series,DataFrame
    import pandas as pd
    from sklearn.model_selection import train_test_split
    
    
    ratings = pd.read_table('ratings.dat', sep='::', header=None, engine = 'python')
    
    data = ratings.filter(regex='user_id|movie_id|rating')
    
    ratings_array = np.array(ratings)
    
    ratings_list = ratings_array.tolist()
    
    rating_file = []
    for item in ratings_list:
        rating_file.append(str(item[0])+' '+str(item[1])+' '+str(item[2])+'\n')
        
    filename = 'ratings.txt'
    with open(filename,'w') as f:
        for i in range(len(rating_file)):
            f.write(rating_file[i])
  5. 运行代码后,就可以得到我们需要的ratings数据集了~

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值