Fiche de révision - Traitement de données en tables
1. Données tabulées et CSV
Section intitulée « 1. Données tabulées et CSV »- Table = lignes (enregistrements) + colonnes (attributs)
- CSV (Comma-Separated Values) = format texte avec séparateur (
,ou;) - En Python, une table = tableau de dictionnaires
table = [ {"nom": "Dupont", "age": 16}, {"nom": "Martin", "age": 17}]Importer un CSV :
import csvwith open("fichier.csv", "r", encoding="utf-8") as f: for ligne in csv.DictReader(f): table.append(dict(ligne))Exporter un CSV :
with open("sortie.csv", "w", encoding="utf-8", newline="") as f: ecrivain = csv.DictWriter(f, fieldnames=["nom", "age"]) ecrivain.writeheader() for ligne in table: ecrivain.writerow(ligne)2. Opérations sur les tables
Section intitulée « 2. Opérations sur les tables »Projection (sélection de colonnes)
Section intitulée « Projection (sélection de colonnes) »[{"nom": e["nom"]} for e in table]Filtrage (sélection de lignes)
Section intitulée « Filtrage (sélection de lignes) »[e for e in table if e["age"] >= 16] # critère simple[e for e in table if e["age"] >= 16 and e["ville"] == "Lyon"] # critère combinésorted(table, key=lambda e: e["age"]) # croissantsorted(table, key=lambda e: e["age"], reverse=True) # décroissantLe tri Python est stable : en cas d'égalité, l'ordre d'origine est conservé.
Agrégation
Section intitulée « Agrégation »valeurs = [e["note"] for e in table]sum(valeurs) min(valeurs) max(valeurs) len(valeurs)3. Qualité des données
Section intitulée « 3. Qualité des données »| Vérification | Ce qu'on cherche |
|---|---|
| Valeurs manquantes | Champs vides ou absents |
| Types incorrects | "seize" au lieu de 16 |
| Valeurs aberrantes | Age négatif, note > 20 |
| Doublons | Lignes identiques ou mêmes clés |
4. Fusion de tables (jointure)
Section intitulée « 4. Fusion de tables (jointure) »Principe : combiner deux tables sur un attribut commun.
def jointure(t1, t2, cle): resultat = [] for l1 in t1: for l2 in t2: if l1[cle] == l2[cle]: fusion = {} fusion.update(l1) fusion.update(l2) resultat.append(fusion) return resultatClé primaire : attribut identifiant de manière unique chaque ligne.
Clé étrangère : attribut faisant référence à la clé primaire d'une autre table.
Les lignes sans correspondance dans l'autre table sont exclues du résultat.
5. Schéma récapitulatif des opérations
Section intitulée « 5. Schéma récapitulatif des opérations »| Opération | Entrée | Sortie | Python |
|---|---|---|---|
| Projection | Table + colonnes | Table réduite | Compréhension de dict |
| Filtrage | Table + condition | Table filtrée | [e for e in t if ...] |
| Tri | Table + colonne | Table ordonnée | sorted(t, key=...) |
| Agrégation | Table + colonne | Une valeur | sum(), min(), max() |
| Jointure | 2 tables + clé | Table fusionnée | Double boucle + update() |
Vocabulaire essentiel
Section intitulée « Vocabulaire essentiel »| Terme | Définition rapide |
|---|---|
| Table | Données en lignes et colonnes |
| Enregistrement | Une ligne de la table |
| Attribut | Une colonne de la table (nom, age, etc.) |
| CSV | Format texte pour stocker des tables |
| Projection | Ne garder que certaines colonnes |
| Filtrage | Ne garder que certaines lignes |
| Tri | Ordonner les lignes selon un attribut |
| Agrégation | Calculer une valeur résumant une colonne |
| Jointure | Fusion de deux tables sur un attribut commun |
| Clé primaire | Identifiant unique d'une ligne |
| Clé étrangère | Référence vers la clé primaire d'une autre table |
| Doublon | Enregistrement apparaissant plusieurs fois |
© 2026 Corentin Dupont - LyCode
Créé avec Astro Starlight