# Données structurées et leur traitement > Chaque jour, nous produisons et consommons des quantités gigantesques de données : messages, photos, achats, positions GPS, statistiques sportives... > > Mais comment ces données sont-elles organisées ? Comment peut-on les exploiter pour en tirer des informations utiles ? --- ## Le Programme | Contenus | Capacités attendues | |----------|---------------------| | Données, descripteurs, valeurs, types | Identifier les descripteurs et les valeurs d'une collection de données | | Formats de fichiers (CSV, JSON) | Ouvrir et manipuler des fichiers de données structurées | | Traitement de données | Trier, filtrer et effectuer des calculs sur des données | | Open data | Trouver et exploiter des données ouvertes | | Cloud et données personnelles | Comprendre les enjeux du stockage des données | --- ## Qu'est-ce qu'une donnée ? ### Définition Une **donnée** est une information représentée sous une forme conventionnelle, permettant son traitement par un ordinateur. **Exemples de données** : - Votre nom, prénom, date de naissance - Le prix d'un article - La température relevée par un capteur - Le nombre de likes sur une publication ### Données brutes vs informations | Concept | Description | Exemple | |---------|-------------|---------| | **Donnée brute** | Valeur sans contexte | `37.5` | | **Information** | Donnée avec du sens | `Température corporelle : 37.5°C` | > Une donnée devient une **information** quand on lui donne un contexte et une signification. --- ## Les données structurées ### Organisation en tableau Les données structurées sont organisées de manière régulière, généralement sous forme de **tableau** : | Prénom | Âge | Ville | Sport préféré | |--------|-----|-------|---------------| | Emma | 15 | Genech | Handball | | Lucas | 16 | Orchies | Football | | Léa | 15 | Templeuve | Danse | | Noah | 16 | Genech | Basketball | ### Vocabulaire essentiel | Terme | Définition | Exemple | |-------|------------|---------| | **Collection** | Ensemble de données du même type | Le tableau des élèves | | **Objet** | Un élément de la collection | Une ligne du tableau (un élève) | | **Descripteur** | Caractéristique décrite (colonne) | Prénom, Âge, Ville, Sport préféré | | **Valeur** | Contenu d'une case | "Emma", 15, "Genech" | ### Types de données Chaque valeur a un **type** qui détermine comment elle est traitée : | Type | Description | Exemples | |------|-------------|----------| | **Texte** (chaîne de caractères) | Suite de caractères | "Emma", "Genech", "Handball" | | **Nombre entier** | Nombre sans décimales | 15, 16, 2024 | | **Nombre décimal** | Nombre avec décimales | 1.75, 37.5, 9.99 | | **Booléen** | Vrai ou faux | Vrai, Faux | | **Date** | Date et/ou heure | 15/01/2024, 14:30:00 | ### Activité : Identifier les descripteurs ✏️ **À faire** : Observez ce tableau de jeux vidéo et identifiez : | Titre | Studio | Année | Note | Multijoueur | |-------|--------|-------|------|-------------| | Minecraft | Mojang | 2011 | 9.2 | Vrai | | Fortnite | Epic Games | 2017 | 8.5 | Vrai | | Zelda TOTK | Nintendo | 2023 | 9.8 | Faux | | FIFA 24 | EA Sports | 2023 | 7.5 | Vrai | 1. Combien d'objets contient cette collection ? 2. Quels sont les descripteurs ? 3. Quel est le type de chaque descripteur ? 4. Quelle est la valeur du descripteur "Studio" pour "Fortnite" ? --- ## Les formats de fichiers ### Le format CSV **CSV** signifie *Comma-Separated Values* (valeurs séparées par des virgules). C'est un format texte simple pour stocker des données en tableau. **Exemple de fichier `eleves.csv`** : ```csv Prénom,Âge,Ville,Sport Emma,15,Genech,Handball Lucas,16,Orchies,Football Léa,15,Templeuve,Danse Noah,16,Genech,Basketball ``` **Caractéristiques** : - Première ligne = noms des descripteurs - Une ligne = un objet - Valeurs séparées par des virgules (ou points-virgules en France) - Fichier lisible avec un simple éditeur de texte > **Attention** : En France, on utilise souvent le point-virgule (`;`) comme séparateur car la virgule est utilisée pour les nombres décimaux (3,14 au lieu de 3.14). ### Le format JSON **JSON** signifie *JavaScript Object Notation*. C'est un format plus structuré, très utilisé sur le web. **Exemple de fichier `eleves.json`** : ```json [ { "prenom": "Emma", "age": 15, "ville": "Genech", "sport": "Handball" }, { "prenom": "Lucas", "age": 16, "ville": "Orchies", "sport": "Football" } ] ``` **Caractéristiques** : - Utilise des accolades `{}` pour les objets - Utilise des crochets `[]` pour les listes - Descripteurs entre guillemets - Plus lisible mais plus volumineux que CSV ### Comparaison des formats | Critère | CSV | JSON | |---------|-----|------| | **Lisibilité** | Simple | Structuré | | **Taille** | Compact | Plus volumineux | | **Hiérarchie** | Non (tableau plat) | Oui (données imbriquées) | | **Usage** | Tableurs, exports | Web, APIs | | **Ouverture** | Excel, LibreOffice | Navigateurs, éditeurs de code | --- ## Traitement des données ### Les opérations de base | Opération | Description | Exemple | |-----------|-------------|---------| | **Trier** | Ordonner selon un critère | Trier par âge croissant | | **Filtrer** | Garder certaines lignes | Garder seulement les élèves de Genech | | **Rechercher** | Trouver une valeur | Trouver l'élève "Emma" | | **Calculer** | Effectuer des opérations | Calculer l'âge moyen | | **Croiser** | Combiner des données | Ajouter les notes à partir d'un autre fichier | ### Exemple avec un tableur Dans LibreOffice Calc ou Excel : **Trier** : 1. Sélectionner le tableau 2. Menu Données → Trier 3. Choisir le critère de tri **Filtrer** : 1. Sélectionner le tableau 2. Menu Données → Filtre automatique 3. Cliquer sur la flèche d'un descripteur pour filtrer **Calculer** : - `=MOYENNE(B2:B5)` → calcule la moyenne des âges - `=NB.SI(C2:C5;"Genech")` → compte les élèves de Genech - `=MAX(B2:B5)` → trouve l'âge maximum ### Activité : Manipuler des données ✏️ **À faire** avec LibreOffice Calc : 1. Téléchargez un fichier CSV (ou créez-en un) 2. Ouvrez-le dans LibreOffice Calc 3. Triez les données par ordre alphabétique 4. Filtrez pour n'afficher que certaines lignes 5. Calculez une moyenne, un maximum, un minimum --- ## Les données ouvertes (Open Data) ### Qu'est-ce que l'Open Data ? L'**Open Data** désigne des données accessibles librement et gratuitement, que chacun peut utiliser, modifier et partager. **Principes** : - Accès libre et gratuit - Format ouvert et exploitable - Licence permettant la réutilisation ### Exemples de données ouvertes | Source | Données disponibles | |--------|---------------------| | [data.gouv.fr](https://www.data.gouv.fr) | Données publiques françaises | | [INSEE](https://www.insee.fr) | Statistiques démographiques et économiques | | [OpenStreetMap](https://www.openstreetmap.org) | Données cartographiques | | [Météo France](https://donneespubliques.meteofrance.fr) | Données météorologiques | | [SNCF Open Data](https://data.sncf.com) | Horaires, gares, trafic | ### Exemples d'utilisation - **Applications de transport** : utilisent les données SNCF/RATP - **Sites météo** : utilisent les données Météo France - **Cartes** : utilisent OpenStreetMap - **Journalisme de données** : analyse des données publiques ### Activité : Explorer l'Open Data ✏️ **À faire** : 1. Rendez-vous sur [data.gouv.fr](https://www.data.gouv.fr) 2. Recherchez un jeu de données qui vous intéresse (sport, culture, environnement...) 3. Téléchargez-le au format CSV 4. Ouvrez-le dans un tableur 5. Posez-vous des questions et essayez d'y répondre avec les données **Exemples de questions** : - Quelle commune a le plus de... ? - Quelle est l'évolution de... au fil des années ? - Y a-t-il une corrélation entre... et... ? --- ## Le Cloud et le stockage des données ### Qu'est-ce que le Cloud ? Le **Cloud** (nuage) désigne le stockage et le traitement de données sur des serveurs distants, accessibles via Internet. **Exemples de services Cloud** : - Stockage : Google Drive, iCloud, OneDrive, Dropbox - Photos : Google Photos, iCloud Photos - Musique : Spotify, Deezer, Apple Music - Documents : Google Docs, Office 365 ### Avantages et inconvénients | Avantages | Inconvénients | |-----------|---------------| | Accès depuis n'importe où | Dépendance à Internet | | Synchronisation automatique | Vie privée (données sur serveurs tiers) | | Partage facile | Coût des abonnements | | Sauvegarde automatique | Risque de piratage | | Pas besoin d'espace local | Consommation énergétique des datacenters | ### Où sont stockées vos données ? Quand vous utilisez un service Cloud, vos données sont physiquement stockées dans des **datacenters** (centres de données), souvent situés à l'étranger. > **Question** : Savez-vous dans quel pays sont stockées vos photos Instagram ? Vos messages Snapchat ? --- ## Protection des données personnelles ### Le RGPD Le **RGPD** (Règlement Général sur la Protection des Données) est une loi européenne entrée en vigueur en 2018. **Vos droits** : - **Droit d'accès** : savoir quelles données sont collectées sur vous - **Droit de rectification** : corriger des données inexactes - **Droit à l'effacement** : demander la suppression de vos données - **Droit à la portabilité** : récupérer vos données dans un format exploitable - **Droit d'opposition** : refuser certains traitements ### La CNIL La **CNIL** (Commission Nationale de l'Informatique et des Libertés) est l'autorité française qui veille au respect de la vie privée numérique. **Ses missions** : - Informer et protéger les citoyens - Contrôler les entreprises - Sanctionner les abus - Conseiller les pouvoirs publics ### Activité : Exercer ses droits ✏️ **À faire** : 1. Choisissez un réseau social que vous utilisez 2. Trouvez comment accéder à vos données personnelles 3. Téléchargez une copie de vos données (si possible) 4. Analysez ce qui a été collecté sur vous **Exemples** : - Instagram : Paramètres → Votre activité → Télécharger vos informations - Google : [takeout.google.com](https://takeout.google.com) - Facebook : Paramètres → Vos informations Facebook → Télécharger vos informations --- ## Traitement des données en Python ### Lire un fichier CSV ```python import csv # Ouvrir et lire un fichier CSV with open('eleves.csv', 'r') as fichier: lecteur = csv.DictReader(fichier, delimiter=';') for ligne in lecteur: print(ligne['Prénom'], ligne['Âge']) ``` ### Filtrer des données ```python # Filtrer les élèves de plus de 15 ans eleves_16_ans = [] for ligne in lecteur: if int(ligne['Âge']) >= 16: eleves_16_ans.append(ligne) ``` ### Calculer une moyenne ```python # Calculer l'âge moyen total = 0 nombre = 0 for ligne in lecteur: total += int(ligne['Âge']) nombre += 1 moyenne = total / nombre print(f"Âge moyen : {moyenne}") ``` ### Activité : Traiter des données en Python ✏️ **À faire** sur [Notebook](https://notebook.florianmathieu.prof) : 1. Créez un fichier CSV avec des données de votre choix 2. Écrivez un programme Python pour : - Lire le fichier - Afficher toutes les données - Filtrer selon un critère - Calculer une statistique (moyenne, maximum, etc.) --- ## Métadonnées ### Qu'est-ce qu'une métadonnée ? Une **métadonnée** est une donnée qui décrit une autre donnée. C'est une "donnée sur la donnée". **Exemples** : - Pour une photo : date de prise de vue, appareil utilisé, coordonnées GPS - Pour un fichier : nom, taille, date de création, auteur - Pour une chanson : artiste, album, durée, genre ### Métadonnées et vie privée Les métadonnées peuvent révéler beaucoup d'informations : | Type de fichier | Métadonnées sensibles | |-----------------|----------------------| | **Photo** | Position GPS, date, appareil | | **Document** | Auteur, historique des modifications | | **Email** | Expéditeur, destinataires, date, serveurs traversés | | **Musique** | Historique d'écoute, préférences | > **Rappel** : Les métadonnées EXIF des photos ont été étudiées dans le chapitre sur la photographie numérique. --- ## Big Data ### Définition Le **Big Data** désigne des ensembles de données tellement volumineux qu'ils ne peuvent pas être traités par des outils classiques. ### Les 3V du Big Data | V | Signification | Exemple | |---|---------------|---------| | **Volume** | Quantité massive de données | Facebook : 4 pétaoctets/jour | | **Vélocité** | Vitesse de génération | Twitter : 500 millions de tweets/jour | | **Variété** | Diversité des formats | Texte, images, vidéos, capteurs... | ### Qui utilise le Big Data ? - **Réseaux sociaux** : personnalisation du fil d'actualité - **E-commerce** : recommandations de produits - **Streaming** : suggestions de films/musiques - **Santé** : analyse de données médicales - **Transports** : optimisation du trafic --- ## Pour aller plus loin - 📖 [CNIL - Comprendre mes traces](https://www.cnil.fr/fr/comprendre-mes-traces) - 📖 [Data.gouv.fr](https://www.data.gouv.fr) - Plateforme Open Data française - 🎥 [Do Not Track](https://donottrack-doc.com/fr/) - Webdocumentaire sur le tracking - 📖 [Mes datas et moi](https://www.yourdigitallife.fr/) - MAIF --- ## Synthèse Complétez le texte suivant : Les données structurées sont organisées sous forme de _____________ avec des lignes (objets) et des colonnes (_____________). Chaque valeur a un _____________ : texte, nombre entier, nombre décimal, booléen ou date. Le format _____________ stocke les données avec des valeurs séparées par des virgules, tandis que le format _____________ utilise des accolades et des crochets. Les opérations de base sur les données sont : _____________, filtrer, rechercher et _____________. L'_____________ Data désigne des données librement accessibles et réutilisables. Le _____________ protège nos données personnelles en Europe et la _____________ veille à son application en France. --- Auteur : Florian Mathieu Licence CC BY NC Licence Creative Commons
Ce cours est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.