PYTHON - TRAITER DES DONNÉES
Présentation du projet
Dans le cadre de ma première année de BUT Réseaux & Télécommunications à l’IUT d’Annecy, j’ai réalisé un projet individuel en Python intitulé SAE 105 : Traitement de données. L’objectif était de manipuler, traiter et présenter des données issues d’un fichier CSV contenant plus de 36 000 lignes et 27 colonnes sur les villes françaises.
Objectif du projet
- Développer un programme en Python respectant un cahier des charges précis.
- Apprendre à lire et traiter des fichiers CSV volumineux.
- Mettre en place un menu interactif proposant différentes fonctionnalités (statistiques, distances entre villes, cartographie, etc.).
- Produire des visualisations graphiques (histogrammes, cartes interactives avec Folium).
- S’habituer à travailler en autonomie avec des livrables réguliers
Déroulement et réalisations du projet
Compétences mobilisées
- Programmation Python : boucles, fonctions, gestion de listes, tris (tri bulle), menus interactifs.
- Traitement de données : extraction et nettoyage d’informations, calculs statistiques (moyenne, écart-type, accroissement de population).
- Visualisation : utilisation des bibliothèques matplotlib, folium et branca pour tracer des cartes et graphiques.
- Gestion de projet : respect des délais, autonomie dans le développement, livraison de résultats progressifs.
- Esprit d’analyse : structurer un problème complexe en étapes claires.
Fonctionnalités développées
- Extraction de données à partir du fichier CSV (villes, départements, populations, densité, coordonnées GPS, altitudes).
Statistiques :
- 5 villes les plus/moins peuplées d’un département.
- 10 villes avec la densité la plus forte/faible.
- Villes avec le plus fort accroissement ou déclin de population entre 1999 et 2012.
- Visualisation cartographique : affichage des villes sur OpenStreetMap avec des cercles proportionnels à leur densité/population.
- Histogramme : répartition des villes selon leur nombre d’habitants en 2010.
- Distances : calcul de la distance euclidienne entre deux villes (ex. Paris – Marseille).
- Algorithme de parcours : recherche d’un chemin entre deux villes en utilisant la proximité géographique.
Outils utilisés
- Python 3
- Bibliothèques : matplotlib, folium, branca
- Fichier CSV : villes_france.csv (≈ 36 700 lignes)
- Moodle : rendu et suivi des livrables
Difficultés rencontrées
- Manipulation d’un fichier volumineux (optimisation du traitement).
- Mise en place d’algorithmes de tri et de calcul statistique avec uniquement les notions vues en cours.
- Utilisation de bibliothèques nouvelles comme Folium pour afficher des cartes interactives.
- Gestion du temps avec des rendus fréquents à chaque séance.
Conclusion Globale du projet
La SAE 105 a été une expérience formatrice qui m’a permis de mettre en pratique mes connaissances en programmation Python et en traitement de données. J’ai appris à gérer un fichier volumineux, à en extraire des informations utiles et à les représenter sous forme de statistiques, graphiques et cartes interactives. Ce projet m’a également appris à travailler en autonomie, à respecter un cahier des charges et à surmonter des difficultés techniques. Au final, j’ai pu réaliser un programme complet et structuré, qui constitue une première expérience significative dans le domaine de la data processing et de l’analyse appliquée aux réseaux.