Septima – Analyse de données (Python)
Objectif
Analyser un fichier de données (people.json) et répondre à des questions
simples avec Python.
Le but est de : - lire des données depuis un fichier JSON - filtrer et compter des personnes - faire des calculs simples (âge, salaire, distance) - répondre à des questions données dans l’exercice
Fichier important
main.py: script Python qui contient toutes les réponses de l’exercicepeople.json: fichier de données (personnes)
Principe général
- Charger les données depuis un fichier JSON
- Parcourir la liste des personnes
- Appliquer des conditions (genre, salaire, goûts, localisation…)
- Afficher les résultats demandés
Exemples de questions traitées
- Combien y a-t-il d’hommes et de femmes ?
- Combien de personnes gagnent plus de 2000$ ?
- Quelles personnes aiment le genre Drama ?
- Quel est le salaire moyen et le salaire médian ?
- Qui habite le plus près d’une autre personne ?
- Trouver des couples selon des règles données
Exemple de code (filtrage simple)
# Ce code permet de compter le nombre d’hommes dans les données.
hommes = [p for p in people if p['gender'] == 'Male']
print(len(hommes))
Calcul de distance (terre plate)
Pour certaines questions, on calcule une distance approximative (en supposant que la Terre est plate).
def flat_distance_km(lat1, lon1, lat2, lon2):
km_per_degree = 111.32
dlat = lat2 - lat1
dlon = lon2 - lon1
return ((dlat * km_per_degree)**2 + (dlon * km_per_degree)**2) ** 0.5
Ce que j’ai appris
- Lire des données JSON en Python
- Utiliser des listes et des conditions
- Compter et filtrer des données
- Calculer des moyennes et des âges
- Calculer une distance simple entre deux points
- Résoudre des questions à partir de données réelles
Liens
Dépôt GitLab : https://gitlab.com/ahmadola111-group/exo-algo-trinker-python
Documentation (site) : https://ahmad-docs-b3e3cc.gitlab.io/septima/