def get_users_data(user_name1, user_name2): user1 = engine.get_user_info(user_name1) user2 = engine.get_user_info(user_name2) db.save_user(user1.serialise()) db.save_user(user2.serialise()) timeline1 = tools.flush(user1.timeline, by_what=lambda x: tp.get_words(x['text'], is_normalise=True))[:10] timeline2 = tools.flush(user2.timeline, by_what=lambda x: tp.get_words(x['text'], is_normalise=True))[:10] print len(timeline1) print len(timeline2) mc1 = markov_chain_machine.create_model(timeline1, user_name1, boost) mc2 = markov_chain_machine.create_model(timeline2, user_name2, boost) return mc1, mc2
def create_model_main(users, model_id, is_normalise=True): """ creating markov chain model for users text """ mc = markov_chain(model_id, booster) for m_user in users: timeline_text = tools.flush(m_user.timeline, lambda x:x['text']) for timeline_text_el in timeline_text: message = get_words(timeline_text_el, is_normalise=is_normalise) mc.add_message(message) mc.save() return mc
def create_model(user, is_normalise=True, mc=None): """ creating model for one user """ if not mc: mc = markov_chain(user.name_, booster) timeline_text = tools.flush(user.timeline, lambda x:x['text']) for tt_el in timeline_text: mc.add_message(get_words(tt_el), is_normalise) mc.save() return mc
def form_timeline(user_timeline): true_timeline = tools.flush(user_timeline, by_what=lambda x: tp.get_words(x['text'], is_normalise=True)) return true_timeline