示例#1
0
def get_recommendation(current_user):

    cursor = db.user.find()

    for doc in cursor:

        user = doc['_id']

        if str(user) == str(current_user):

            get_nearest_neighbours(user_vector[str(user)])
示例#2
0
def get_recommendation(current_user):
	
	cursor = db.user.find()
	
	for doc in cursor:
		
		user = doc['_id']
		
		if str(user) == str(current_user):
			
			get_nearest_neighbours(user_vector[str(user)])
示例#3
0
def get_recommendation(current_user):
	
	cursor = db.user.find()
	
	for doc in cursor:
		
		user = doc['_id']
		
		if user == current_user:

			Good = doc['rates']['good'] 	
				
			Avg= doc['rates']['avg'] 	 
				
			Poor = doc['rates']['poor'] 
				
			list_of_weight = [[Good,8], [Avg,6], [Poor,-1]]
		
			with open("current_user_info.txt", "w") as f:
		
				f.write("\n"+str(user)+">")
		
				for i in list_of_weight:
				
					for j in i[0]:
					
						f.write(str(j)+":"+str(i[1])+"\t")
					
				f.write("\n")

			with open("current_user_info.txt","r") as f:
		
				for line in f.readlines():
			
					line = line.strip()
			
					data = line.split(">")
			
					if len(data) > 1:
			
						user = data[0].strip()
			
						list_of_vid = data[1]
					else:
						user = data[0].strip()
			
						list_of_vid = []

			list_of_watched_videos = []
	
			if list_of_vid:
	
				vid_rat_pair = list_of_vid.split("\t")
	
				for pair in vid_rat_pair:
		
					list_of_watched_videos.append((pair.split(":")[0],pair.split(":")[1]))
		
					list_of_videos.add(pair.split(":")[0])
		
			current_user_rating[user] = list_of_watched_videos

			for user in current_user_rating:
		
				current_user_vector[user] = [0 for i in range(len(list_of_videos))]
		
				for vid in range(len(list_of_videos)):
			
					for v_id in user:
				
						if list_of_videos[vid] == v_id[0]:
					
							current_user_vector[user][vid] = v_id[1]
					
				current_user_vector[user] = np.array(user_vector[user],dtype=float)

			return get_nearest_neighbours(current_user_vector[user])