Analyser les données avec ou sans DAX
Introduction
Dès le départ, Power BI a été conçu comme un outil nécessitant peu l’utilisation de code, c’est-à-dire pouvant être utilisé directement à partir de l’interface graphique (IU, pour Interface Utilisateur) lorsqu’il s’agit de générer des formules. Cette approche est évoquée dans la première partie de ce chapitre, à travers trois exemples complémentaires.
Comme pour la plupart de ces outils, c’est lorsque vous faites l’effort d’apprendre le langage de formule (dans Power BI, le DAX) que vous passez un cap et utilisez l’outil dans toute sa puissance. Dans la deuxième partie de ce chapitre, je vous propose une introduction solide au DAX, pour vous permettre de maîtriser les bases indispensables et la mécanique de ce langage.
Enfin, ce début d’année 2024 voit l’arrivée dans Power BI de l’IA générative, avec l’intégration de Copilot : même si c’est encore très récent, les possibilités sont déjà très intéressantes, et l’intégration dans Power BI fonctionne à merveille. La dernière section de ce chapitre évoque les prérequis (notamment en termes de licence) et l’utilisation de Copilot pour générer...
Utiliser l’interface utilisateur (IU)
Pour pratiquer les exemples de ce chapitre, vous pouvez continuer avec votre fichier Livres, ou partir du fichier Livres 07.pbix que vous avez téléchargé.
Utiliser l’IU, c’est laisser Power BI générer implicitement une formule, à l’aide de fonctionnalités ou de menus déroulants : c’est rapide, simple… et un peu frustrant. En effet, vous n’aurez que rarement accès à la formule implicite, et vous ne pourrez pas vous servir de celle-ci pour créer d’autres formules.
Pour choisir le type d’agrégation
Nous avons déjà, sans même nous en rendre compte, utilisé le premier type de formule générée implicitement :
![images/07SOB001N.png](https://www.eni-training.com/download/50ab4c29-0aad-4473-8f0f-c4ed1f516889/images/07SOB001N.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
Ce tableau est construit à partir des colonnes de la table Livres (Auteur, Numéro livre, Nbre de pages, Prix catalogue). Les deux dernières colonnes sont précédées, dans le volet Données, d’un pictogramme ∑ : il indique que cette donnée est toujours accompagnée d’une fonction d’agrégation implicite lorsqu’elle est ajoutée sur le rapport. Par défaut, la fonction d’agrégation implicite est toujours l’addition (« Somme de »).
Dans ce tableau, cette somme n’en est pas vraiment une, puisque chaque livre, identifié par son numéro, a un nombre de pages et un prix catalogue. Mais alors pourquoi cette agrégation automatique ?
La réponse apparaît lorsque nous enlevons le champ Numéro livre, pour ne garder que l’auteur :
![images/07SOB002N.png](https://www.eni-training.com/download/50ab4c29-0aad-4473-8f0f-c4ed1f516889/images/07SOB002N.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
Cette fois-ci, la somme du nombre de pages prend tout son sens : Giono est associé à six ouvrages, pour un total de 2618 pages. Et c’est ainsi que vous obtenez le nombre total de pages par catégorie de livres.
C’est un fonctionnement courant dans les outils de BI, prévus pour analyser les données à différents niveaux (année, mois, semaine en est un autre exemple). Que Power BI le fasse automatiquement est donc une bonne chose.
Mais que dire du prix catalogue ? Est-ce que la somme des prix est un bon indicateur ? En général, c’est plutôt la moyenne qui est utilisée (« Nous...
Découvrir le DAX
Il est important de préciser que les notions évoquées ici sont de loin les plus complexes que propose Power BI, mais qu’elles vont vous donner une puissance de calcul considérable.
Ce chapitre a pour objectif de présenter les notions clés du langage DAX ; il vous permettra d’acquérir une maîtrise opérationnelle des fonctions DAX les plus fréquemment utilisées, à travers des exemples concrets et des cas courants.
Après une première partie exposant les concepts clés (mesure et colonne, structure du DAX et, thème central, le contexte d’évaluation de la formule), qu’il est essentiel de lire, et peut être de relire, la deuxième partie présente des situations courantes d’utilisation du DAX, et nous terminons enfin avec l’apport de Copilot dans la génération de formules.
J’ai consacré tout un ouvrage au langage DAX, paru en avril 2021 aux Éditions ENI ; je vous encourage, si vous souhaitez maîtriser ce langage, à lire ce livre, qui est accompagné de nombreux exercices d’application.
Remarques et conventions :
L’ensemble de ce chapitre est basé sur le fichier Livres07.pbix, et le résultat de ce chapitre pourra être retrouvé dans le fichier Livres07 - final.pbix.
-
Afin de renforcer la lisibilité des formules, la fonction elle-même est toujours indiquée en majuscules.
-
Nous construirons systématiquement des mesures (voir section suivante) : le recours à la colonne doit rester exceptionnel, même si le réflexe d’un utilisateur venant d’Excel est souvent de créer des colonnes.
-
L’ensemble des mesures créées dans ce chapitre seront stockées dans la table Detail des commandes.
-
Pour chaque mesure créée, il faut penser à lui appliquer un format par défaut (onglet Outils de mesure).
-
Nous nous servirons du visuel Table pour afficher le résultat des formules.
Les formules DAX pouvant être rapidement complexes, il est fortement recommandé de suivre un certain formalisme lors de leur écriture (passage à la ligne, indentation, commentaires, alignement de la parenthèse fermante avec le début du nom de la fonction)....
Utiliser Copilot pour écrire en langage DAX
À l’heure où j’écris ces lignes, Copilot vient tout juste d’être intégré à Power BI. Il y remplit plusieurs rôles, de Power Query à la création de visuels, en passant par la description des mesures et le sujet qui nous intéresse, la génération de formules DAX et la création de mesures. Il est très probable que l’étendue des possibilités de Copilot va grandir rapidement, mais son avancement actuel est déjà très impressionnant.
Mais soyons clair : son usage doit être réservé à une personne à même de jauger et de confirmer la proposition de l’IA. En d’autres termes, un minimum de connaissance du DAX est incontournable. Les précédentes sections avaient cet objectif.
À ce titre, j’ai pu tester Copilot, et si les résultats sont globalement très satisfaisants, j’ai tout de même dû m’y reprendre à deux fois lorsque la réponse de l’IA était complètement hors sujet.
À ce jour, pour pouvoir invoquer Copilot, le rapport doit avoir été publié dans un espace de travail de capacité Premium (autrement dit, votre société doit avoir acquis une licence particulière, la Premium...