Dans le cadre du cours OpenData, nous avons décidé de développer un site web consistant à aider un futur étudiant dans le choix de sa future université. Divers classements existent, et permettent de classer les différentes universités à travers le monde selon une multitude de critères.
Le but de ce projet est donc de pouvoir regrouper différents classements existants, afin qu'un étudiant puisse comparer au mieux les meilleures universités au monde.
Ce projet permet, entre autres, d'aider un étudiant à choisir une université dans un pays précis dans le cadre d'un échange tel que par exemple, Erasmus.
Ce projet a été réalisé avec une grande modularité, permettant une possible évolution future. Le système de fichiers du projet a été organisé de la manière suivante:
On peut donc voir que l'ensemble des librairies utilisées sont accessibles localement, et donc le site ne nécessite pas une connexion internet afin de fonctionner.
Le site a été divisé en 2 grands axes: un classement général et une comparaison entre deux universités. L'utilisateur pourra donc voir les classements au niveau mondial et en cliquant sur la carte, pourra spécifier un continent, voir un pays spécifique. La comparaison entre deux universités fournira à l'utilisateur une vue plus détaillée sur les points forts de chaque université en se basant sur les critères de chaque classement.
Au total 4 librairies ont été utilisées dans le cadre de ce projet.
Afin de pouvoir comparer les universités entre elles, trois classements ont été choisis, à savoir le classement Shanghai, CWUR et Times. Ces classements font partie des plus connus et regroupent une large quantité d'universités à travers le monde.
Les trois classements sont largement diffusés à travers internet au format CSV, mais présentent des différences qui ont dû être comblées à travers des scripts.
Après avoir comparé les trois classements entre eux (sous forme CSV), on a voulu les rendre similaires afin de faciliter la manipulation et la lecture des données. Une première étape était donc d'ajouter dans le classement de Shanghai le pays correspondant à chaque université. Le classement Times et CWUR avait déjà le pays associé à l'université. Afin de pouvoir effectuer ce traitement, on s'est servi d'un script addCountryToShanghai.py. Ce script permet de se servir des datasets cleanupCountry.csv et school_and_country_table.csv afin de remplir le dataset représentant le classement Shanghai.
Après avoir le pays associé à chaque université dans chaque classement, il fallait avoir le continent correspondant afin de pouvoir filtrer les pays par continent et donc pouvoir sélectionner une université plus rapidement. Un script addContinentToCountry.py a donc été réalisé, et permet, à partir des fichiers continent_and_country_table.csv et Countries-Continents.csv, de trouver le continent associé à chaque pays.
Afin de pouvoir afficher les universités par pays (dans la carte et dans le comparateur) il était indispensable pour nous d'inclure les différentes régions autonomes dans les pays correspondants (par exemple: inclure Hong Kong dans la Chine). Le script compareCountries.py permet de comparer tous les pays des classements et d'afficher ceux qui ne sont pas compris dans le fichier JSON countries.json, qui correspondant à tous les pays de la carte fournie par la librairie AmCharts.
Finalement, afin d'éviter des erreurs de lecture, quelques fichiers CSV ont été convertis avec le charset UTF-8 qui gère les accents dans les différentes langues.
Ce projet pourrait subir diverses modifications permettant une sélection plus fine des données en se basant sur des classements supplémentaires.
D'autres idées d'affichage des donnés sont possibles et pourraient permettre un affichage plus rapide et plus objectif de certaines informations.
La comparaison réalisée dans ce projet ne permet pas la sélection des paramètres de comparaison et ne permet pas la comparaison entre classements, mais ceci pourrait être une extension possible.
Des informations supplémentaires pourraient présenter son utilité, telles que la localisation de l'université (au sud ou au nord du pays), le climat du pays en question ou alors le coût de la vie. Ces paramètres pourraient être introduits via un appel à la page Wikipédia correspondant au pays de l'université.