Exemple #1
0
def calcularValor(usuari, restaurant):
    conn = iDB.__connectDB__('localhost', 'SIO', 'user', 'user')
    print(f"USUARIO {usuari}, RESTAURANTE {restaurant}")
    cursor = conn.cursor()
    cursor.execute(
        f"SELECT AvgValorations from SIO.users where User_name='{usuari}'")
    mitjanaUsuari = cursor.fetchall()
    # print(f"mitjana= {mitjanaUsuari[0][0]}")
    cursor.execute(
        f"SELECT User_name from SIO.users where AvgValorations >= '{mitjanaUsuari[0][0]}'-1 and AvgValorations<='{mitjanaUsuari[0][0]}'+1"
    )
    usuaris_propers = cursor.fetchall()
    total = 0
    total_usuaris = len(usuaris_propers)
    #print(f"Usuari: {usuari}, restaurant: {restaurant}")
    #print(f"llargada= {total_usuaris}")
    for usuari_restaurant in usuaris_propers:
        # print(f"usuari restaurant={usuari_restaurant}")
        cursor.execute(
            f"Select Valoration from SIO.valorations where User_name='{usuari_restaurant[0]}' and Restaurant_name='{restaurant}'"
        )
        valor = cursor.fetchall()
        try:
            total += valor[0][0]
        except IndexError:
            # print("No hi ha res")
            total_usuaris -= 1
    # print(f"el total=:{total}")
    conn.close()
    return total / total_usuaris
Exemple #2
0
import pymysql
import csv
import pandas as pd

import init_DB as iDB
import functions as func
import graph as gp
import matplotlib

## Fitxer princiapl (main)

# Ens connectem a la BD SIO com 'user'
conn = iDB.__connectDB__('localhost', 'SIO', 'user', 'user')

# Insertar en la DB.
# Descomentar per insertar
iDB.loadCSV('./dataset.csv', conn, 'SIO', 'valorations')

# Inicializamos el número de usuariis (iDB.allUser)
iDB.__getUsersName__(conn, 'SIO', 'valorations')
""" 
# Vaig ficar això de manera que podem anar testejant la funció si mode == 1
# Si no és 1, hauria de executrar-se lo que sería el main final.
modo = int(input('Enter your input:'))
print ("Modo " + str(modo))
if (modo == 1):
    iDB.loadCSV('C:\Pract-SIO/Pract-SIO/dataset.csv', conn, 'SIO', 'users')
    func.getGraphPeruser(conn, 'SIO', 'users', 'User1', True)
else:
    # funcage of all users
    funcage = func.getAllfuncage(conn, 'SIO', 'valorations')