En ingénierie décisionnelle, il existe un adage impitoyable que tout analyste finit par graver au-dessus de son écran : "Garbage In, Garbage Out". Vous pouvez concevoir les graphiques les plus spectaculaires et les jauges les plus sophistiquées ; si les données sous-jacentes sont truffées de doublons, de dates mal typées ou de valeurs aberrantes, votre tableau de bord conduira inévitablement les décideurs à des choix erronés.
La première étape indispensable dans la conception d'une solution décisionnelle avec Power BI ne consiste donc pas à glisser-déposer des histogrammes, mais à préparer et assainir la matière première.
🎯 Les Objectifs Pédagogiques#
À la fin de ce premier grand module consacré à la préparation des données, vous serez capable de :
- Établir des connexions robustes avec une multitude de sources (fichiers plats Excel/CSV, bases de données relationnelles SQL Server/PostgreSQL, ou encore requêtes personnalisées).
- Naviguer avec aisance dans l'Éditeur Power Query, l'atelier ETL (Extract, Transform, Load) intégré à Power BI.
- Identifier et corriger les anomalies de données : typage strict des colonnes, suppression du bruit inutile, gestion des valeurs nulles et dédoublonnage.
- Restructurer vos données en passant d'un tableau à plat orienté reporting humain à un format normalisé tabulaire grâce au dépivotage (Unpivot).
- Fusionner (Merge) et combiner (Append) des requêtes pour unifier vos silos d'information.
📚 Ne confondez pas : Power Query (Langage M) vs VertiPaq (DAX)#
L'une des confusions les plus fréquentes chez les personnes qui débutent sur Power BI consiste à mélanger le travail de préparation des données et le travail de calcul analytique.
Power BI abrite sous son capot deux moteurs complètement distincts qui interviennent à des moments différents :
┌────────────────────────────────────────────────────────┐
│ 1. PHASE D'INGESTION & PRÉPARATION : Power Query (M) │
│ Sources brutes ──► Nettoyage ──► Typage ──► Filtrage │
└──────────────────────────┬─────────────────────────────┘
│ Chargement en RAM
▼
┌────────────────────────────────────────────────────────┐
│ 2. PHASE D'ANALYSE & MODÉLISATION : VertiPaq (DAX) │
│ Modèle en étoile ──► Mesures dynamiques ──► Visuels │
└────────────────────────────────────────────────────────┘
| Critère | Power Query (Langage M) | Modélisation & Calcul (DAX) |
|---|---|---|
| Quand intervient-il ? | Lors de l'actualisation (Refresh) des données | À la volée lors de l'interaction utilisateur |
| Langage sous-jacent | M (Data Mashup Language, orienté étapes) | DAX (Data Analysis Expressions, orienté contextes) |
| Objectif principal | Extraire, nettoyer, pivoter, filtrer et combiner | Calculer des ratios, des agrégations et des indicateurs (KPIs) |
| Règle d'or | Préparez vos colonnes ici au plus près de la source | Ne faites ici que des mesures d'agrégation dynamiques |
[!TIP] Le principe de Roche (Roche's Maxim of Data Transformation) : Transformez vos données le plus en amont possible dans votre chaîne de valeur (dans la base SQL si vous en avez la maîtrise, sinon dans Power Query) et le plus en aval uniquement si nécessaire (en DAX dans le rapport).
🗺️ Le Fil Conducteur du Module#
Tout au long de ce module, nous adopterons la casquette d'un Data Analyst intervenant pour une entreprise de distribution commerciale, Global Superstore.
Nous aurons à disposition des extraits de fichiers de commandes, des catalogues produits hétérogènes et des bases de données SQL. Nous apprendrons à dompter ces données brutes pour les transformer en un jeu de données immaculé, prêt pour la modélisation en étoile.
🧭 Sommaire du Module#
Ce module s'articule autour de trois volets d'apprentissage progressifs :
- Obtenir les données : Explorer la richesse des connecteurs Power BI, de la saisie manuelle aux connexions vers SQL Server et l'écriture de requêtes M avancées.
- Transformer les données dans Power Query : Découvrir la panoplie des transformations sans code et low-code (typage, dépivotage, colonnes conditionnelles, jointures).
- Mise en pratique appliquée : Relever un défi complet de nettoyage et d'unification de fichiers hétérogènes avant chargement dans le modèle.
Comme le dit la maxime des data scientists : "80 % du temps d'un projet réside dans la préparation des données". Prenez votre café, nous démarrons dès la prochaine leçon en nous connectant à nos premières sources !
Commentaires