Le cas d’étude proposé concerne le site participatif d’avis Yelp décrit dans le document « Contexte d’étude - Analyse de données Yelp ». Globalement, des utilisateurs donnent leur avis sur des restaurants. Ces utilisateurs possèdent ou non des amis qui sont aussi des utilisateurs du site.
➥ Proposez une modélisation permettant de couvrir ce cas d’étude
➥ Écrire un script python permettant de transformer et nettoyer les fichiers yelp_restaurants.json, yelp_user.json et yelp_review.json en autant de fichiers .csv que nécessaire
➥ Créer une nouvelle base de données locale sous neo4j et définir les requêtes en langage cypher permettant de répondre aux besoins décrits ici
➥ Construction du moteur de recommandation d’influenceurs, pour sélectionner ces utilisateurs-influenceurs pour chacun des restaurants, on se propose de calculer un score d’influence des utilisateurs de la plateforme avec les règles décrites ici
Recommendation System, YELP Dataset, influence score, pandas, json, csv, neo4j database, cypher query language
- Python 3.6
- neo4j
Use the package manager pip to install :
pip install py2neo
import pandas as pd
import numpy as np
from IPython.display import Image
from py2neo import Graph
from random import randrange
Les trois Dataset YELP en json :
➥ yelp_restaurants.json
➥ yelp_user.json
➥ yelp_review.json
Afin de couvrir l’ensemble du cas d’étude et pouvoir répondre à l’ensemble des requêtes traité dans l'interrogation des données, la figure suivante représente la modélisation que nous proposons, deux types de nœuds : user et restaurants ainsi que deux types de relations : friends et review, chacun avec ces propres attributs.
-
Data cleaning and transformation in .csv :
➥ friend.csv
➥ restaurant.csv
➥ review.csv -
Data query in .cypher here
-
Le moteur de recommandation d’influenceurs et calcul du score d’influence dans le script python main.ipynb
📫 How to reach me: [email protected]
🌐 My Portfolio: https://kebiri-isam-dine.github.io/
🔗 Project Link: https://github.com/kebiri-isam-dine/Restaurant_Recommendation_System_YELP