Traitement des Donnees
Apprends a transformer des donnees brutes en informations exploitables : filtrage, tri, calculs, agregation et nettoyage avec Python.
Qu'est-ce que le traitement de donnees ?
Le traitement de donnees consiste a appliquer des operations sur des donnees brutes pour les transformer en informations exploitables et significatives.
Le cycle Donnees - Traitement - Information
18, 21, 19, 22, 17
Calcul moyenne
Moyenne = 19.4C
Analogie : Les donnees brutes sont comme des ingredients de cuisine. Le traitement est la recette. L'information finale est le plat pret a manger !
Les operations de traitement
Filtrage
Selectionner les lignes selon un critere
Ex: age > 15Tri
Ordonner les donnees (croissant/decroissant)
Ex: trier par noteCalcul
Effectuer des operations mathematiques
Ex: moyenne, sommeAgregation
Regrouper et calculer des statistiques
Ex: moyenne par classeNettoyage
Corriger erreurs, doublons, valeurs manquantes
Ex: supprimer doublonsTransformation
Modifier le format ou la structure
Ex: normaliser, encoderFiltrage et Tri en Python
Donnees de depart
eleves = [
{"nom": "Alice", "age": 15, "note": 14.5, "classe": "2nde3"},
{"nom": "Bob", "age": 16, "note": 12.0, "classe": "2nde1"},
{"nom": "Clara", "age": 15, "note": 16.5, "classe": "2nde3"},
{"nom": "David", "age": 16, "note": 11.0, "classe": "2nde2"},
{"nom": "Emma", "age": 15, "note": 18.0, "classe": "2nde3"},
]Filtrage
# Filtrer les eleves avec note >= 14
bons_eleves = [e for e in eleves if e["note"] >= 14]
print([e["nom"] for e in bons_eleves])
# ['Alice', 'Clara', 'Emma']
# Filtrer les eleves de 2nde3
eleves_2nde3 = [e for e in eleves if e["classe"] == "2nde3"]
print(len(eleves_2nde3), "eleves en 2nde3")
# 3 eleves en 2nde3
# Filtres combines : 2nde3 ET note > 15
top_2nde3 = [e for e in eleves
if e["classe"] == "2nde3" and e["note"] > 15]Tri
# Trier par note (croissant)
par_note = sorted(eleves, key=lambda e: e["note"])
print([e["nom"] for e in par_note])
# ['David', 'Bob', 'Alice', 'Clara', 'Emma']
# Trier par note (decroissant)
par_note_desc = sorted(eleves, key=lambda e: e["note"], reverse=True)
print("Meilleur :", par_note_desc[0]["nom"])
# Meilleur : Emma
# Trier par nom (alphabetique)
par_nom = sorted(eleves, key=lambda e: e["nom"])Calculs et Statistiques
Calculs de base
# Extraire les notes
notes = [e["note"] for e in eleves]
# [14.5, 12.0, 16.5, 11.0, 18.0]
# Somme
total = sum(notes)
print(f"Total : {total}") # 72.0
# Moyenne
moyenne = sum(notes) / len(notes)
print(f"Moyenne : {moyenne:.2f}") # 14.40
# Min et Max
print(f"Min : {min(notes)}, Max : {max(notes)}")
# Min : 11.0, Max : 18.0
# Nombre d'elements
print(f"Nombre d'eleves : {len(eleves)}") # 5Avec la bibliotheque statistics
import statistics
notes = [14.5, 12.0, 16.5, 11.0, 18.0]
print("Moyenne :", statistics.mean(notes)) # 14.4
print("Mediane :", statistics.median(notes)) # 14.5
print("Ecart-type :", statistics.stdev(notes)) # 2.83Nettoyage des donnees
Les donnees reelles sont souvent "sales" : erreurs de saisie, doublons, valeurs manquantes. Le nettoyage est essentiel avant toute analyse.
Operations de nettoyage
# Donnees avec problemes
noms = ["Alice", " Bob ", "CLARA", "alice", "", "David"]
# Supprimer les espaces (trim)
noms_clean = [n.strip() for n in noms]
# ['Alice', 'Bob', 'CLARA', 'alice', '', 'David']
# Normaliser la casse
noms_clean = [n.strip().capitalize() for n in noms]
# ['Alice', 'Bob', 'Clara', 'Alice', '', 'David']
# Supprimer les valeurs vides
noms_clean = [n for n in noms_clean if n]
# ['Alice', 'Bob', 'Clara', 'Alice', 'David']
# Supprimer les doublons (conserve l'ordre)
noms_uniques = list(dict.fromkeys(noms_clean))
# ['Alice', 'Bob', 'Clara', 'David']Quiz de validation
Question 1: Qu'est-ce que le traitement de donnees ?
Question 2: Quelle operation permet de ne garder que certaines lignes selon un critere ?
Question 3: Qu'est-ce que le nettoyage de donnees ?
Question 4: Quelle fonction Python calcule la moyenne d'une liste ?
Question 5: Qu'est-ce que l'agregation de donnees ?
A retenir
- ✓Traitement = transformer des donnees brutes en informations exploitables.
- ✓Operations principales : filtrer, trier, calculer, agreger.
- ✓Le nettoyage (doublons, erreurs, valeurs manquantes) est essentiel.
- ✓Python :
sorted(), comprehensions,sum()/len().
Dans ce cours
Progression du theme
5/11 cours completes
