Skip to content

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’exercice
  • people.json : fichier de données (personnes)

Principe général

  1. Charger les données depuis un fichier JSON
  2. Parcourir la liste des personnes
  3. Appliquer des conditions (genre, salaire, goûts, localisation…)
  4. 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/