Example #1
0
def cut():
    value = {}
    users = get_user_by_group(100022)
    posts, post_relation, comments, comment_relation = user_comment_smilar(users)
    for user in users:
        user_comments = comment_by_group_user(100022, user)
        user_comment = np.zeros(len(posts), np.float)
        user_comment_length = len(user_comments)
        for comment in user_comments:
            comment_index = comments.index(comment.id)
            user_comment += comment_relation[comment_index]
        user_comment = np.dot(user_comment, post_relation)
        if user_comment_length:
            user_comment = user_comment/user_comment_length
        user_comment = zip(user_comment, posts)
        user_comment.sort(key=lambda x:x[0], reverse=True)
        _ = []
        res = []
        for p in posts_by_users([user]):
            _.append(p.id)
        print _
        for i in user_comment:
            print i[0], '!!'
            if i[0] not in _:
                res.append(i)
        print res
        length = int(len(res)*0.2)
        res = res[:length][::-1]
        value[user] = res 
    from tofromfile import tofile
    tofile('re_recommend', value)
Example #2
0
def main():
    value = {}
    users = get_user_by_group(100022)
    posts, post_relation, comments, comment_relation = user_comment_smilar(users)
    print len(users), users
    for user in users:
        user_comments = comment_by_group_user(100022, user)
        user_comment = np.zeros(len(posts), np.float)
        user_comment_length = len(user_comments)
        for comment in user_comments:
            comment_index = comments.index(comment.id)
            user_comment += comment_relation[comment_index]
        user_comment = np.dot(user_comment, post_relation)
        if user_comment_length:
            user_comment = user_comment/user_comment_length
        user_comment = zip(user_comment, posts)
        user_comment.sort(key=lambda x:x[0], reverse=True)
        value[user] = user_comment
    
    print 'to_file!!', value
    from tofromfile import tofile
    tofile('recommend', value)
Example #3
0
if __name__ == '__main__':
    posts, post_relation, comments, comment_relation = get_similar_post_comment()
    print posts, post_relation

    print comments, comment_relation
    value = {}
    for user in User.where():
        print user.name.encode('U8')
        cs = get_comment_by_user_id(user.id)
        _ = np.zeros(len(posts), np.float)
        l = 0
        for c in cs:
            c_index = comments.index(c.id)
            _ += comment_relation[c_index]
            l += 1
        _ = np.dot(_, post_relation)
        if l:
            _ = _/l
        _ = zip(_, posts)
        _.sort(key = lambda x:x[0], reverse=True)
        value[user.id] = _
        for i,j in cut_tail(_):
            print 'http://social-blogger.tk/post/%s'%j
    from tofromfile import tofile
    tofile('recommend', value)
        
    



Example #4
0
 def tofile(self, f):
     tofile(
             f, (self._count, self.idf())
           )
Example #5
0
 def tofile(self, f):
     tofile(f, (self._count, self.idf()))