Example #1
0
def recommend():
    user_id = str(request.form['user_id'])

    #recmd_result = db.query_userid(user_id)

    per = recommenderDB.minidatabase('recommend')
    recmd_result = per.query_userid(user_id)

    per.close()

    #review_dataset = pd.read_csv('yelp_academic_dataset_review.csv')
    #business_dataset = pd.read_csv('yelp_academic_dataset_business.csv')

    plot_sun_1 = individual_table.individ_selfexplore(user_id)

    plot_li_1 = user_individual_table.user_info_table(user_id)

    plot_li_2 = user_individual_barchart.user_info_bars(user_id)

    plot_sun_2 = word_cloud.individ_wc(user_id)

    return render_template('recommend.html',
                           user_id=user_id,
                           plot_sun_2=plot_sun_2,
                           recmd=recmd_result,
                           plot_sun_1=plot_sun_1,
                           plot_li_1=plot_li_1,
                           plot_li_2=plot_li_2)
Example #2
0
def individ_wc(user_id):
    db = recommenderDB.minidatabase('recommend')
    #text_data = review_dataset[review_dataset['user_id'] == user_id]['text'].tolist()
    individual_data = db.query_review(user_id)
    a = ''
    for i in range(len(individual_data)):
        a += individual_data[i][2]
        
    wordcloud =  WordCloud(background_color="white", max_words=2000, mask=food_mask,
               stopwords=STOPWORDS.add("food"))
    # generate word cloud
    wordcloud.generate(a)
    cwd = os.getcwd()
    wc_path = cwd + '/static/images/test/individual_wc'+user_id+'.png'
    wordcloud.to_file(wc_path)

    #print(cwd)

    db.close()


    #print(wc_path)
    return '/static/images/test/individual_wc'+user_id+'.png'


#individ_wc('qEE5EvV-f-s7yHC0Z4ydJQ')
Example #3
0
def individ_selfexplore(user_id):
    db = recommenderDB.minidatabase('recommend')
    individual_data = db.query_review(user_id)
    business_user = []
    business_time = []
    business_name = []
    business_categories = []
    business_city = []
    business_stars = []
    business_address = []
    for i in range(min(len(individual_data), 10)):
        business_user.append(individual_data[i][1])
        business_time.append(individual_data[i][3])
        business_name.append(individual_data[i][11])
        business_categories.append(individual_data[i][18].split(',')[0])
        business_city.append(individual_data[i][16])
        business_stars.append(individual_data[i][15])
        business_address.append(individual_data[i][14])

    individual_info = list(
        zip(business_time, business_name, business_categories, business_city,
            business_stars, business_address))
    #individual_info = title.append(individual_info)

    individual_info = np.array(individual_info)
    individual_info = np.insert(individual_info, 0, title, axis=0)

    table = FF.create_table(individual_info)
    #table.layout.height = 600
    #individual_plot = py.plot(table, filename='individual_selfexplore')
    table.layout.width = 1700
    cwd = os.getcwd()
    wc_path = cwd + '/static/images/test/individual_selfexplore' + user_id + '.png'
    py.image.save_as(table, filename=wc_path)

    db.close()
    return '/static/images/test/individual_selfexplore' + user_id + '.png'
from os import path
import os
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt

from wordcloud import WordCloud, STOPWORDS
import pandas as pd

import recommenderDB

from scipy.misc import imread
food_mask = imread("Yelp_Logo.jpg")

db = recommenderDB.minidatabase('recommend')


def individ_wc(user_id):
    #text_data = review_dataset[review_dataset['user_id'] == user_id]['text'].tolist()
    individual_dataset = db.query_review(user_id)
    a = ''
    for i in range(len(individual_data)):
        a += individual_data[i][2]

    wordcloud = WordCloud(background_color="white",
                          max_words=2000,
                          mask=food_mask,
                          stopwords=STOPWORDS.add("food"))
    # generate word cloud
    wordcloud.generate(a)
    cwd = os.getcwd()