10 Fonctions d’Expressions d’Analyse de données Utiles (DAX) pour les débutants de Power BI

Introduction

Nous avons travaillé sur de nombreux outils de glisser-déposer dans notre parcours de Business intelligence (BI). Mais aucun n’est parvenu à égaler la nature de couteau suisse du Power BI de Microsoft. Il simplifie vraiment la tâche de croquer des nombres, d’analyser des données et de visualiser des motifs.

C’est l’un des meilleurs outils de « glisser-déposer » de l’industrie. Vous choisissez un champ que vous souhaitez analyser, déposez-le dans le tableau de bord Power BI, et le tour est joué ! Les idées sont juste devant vous.

Mais que se passe-t-il si nous voulons approfondir notre analyse? Que devons-nous faire si nous voulons personnaliser certaines variables ou en générer de nouvelles? Le simple fait de faire un glisser-déposer rapide ne résoudra pas notre problème. C’est là que la puissance des Expressions d’analyse de données (DAX) dans Power BI entre en jeu.

 Power BI DAX

C’est un outil pratique à apprendre pour tout professionnel de la science des données, pas seulement un aspirant à la business intelligence. Cela nous fait gagner une tonne de temps que nous dépenserions autrement pour produire le code.

Dans cet article, nous allons d’abord comprendre ce qu’est la BI et le rôle typique d’un professionnel de l’industrie de la BI. Nous vous présenterons ensuite le puissant outil Microsoft Power BI, puis nous plongerons en profondeur dans dix fonctions d’expressions d’analyse de données (DAX) vraiment utiles que nous pouvons utiliser dans Power BI.

Table des matières

  • Introduction à la Business Intelligence (BI)
  • Rôle d’un professionnel de la Business Intelligence
  • Qu’est-ce que Power BI?
  • Expressions d’analyse de données (DAX) : Que sont-elles et pourquoi sont-elles nécessaires ?
  • Implémentation des fonctions DAX dans Power BI

Introduction à la Business Intelligence (BI)

La Business Intelligence a une large portée, mais nous pouvons la définir comme le processus de suivi et de révision des métriques métier.

Prenons un exemple pour comprendre cela.

Considérez que nous dirigeons une compagnie maritime qui livre des produits à nos clients dans différentes parties du pays. Comme pour toute entreprise, nous voulons améliorer l’expérience client. Il existe plusieurs mesures que nous pouvons mesurer pour évaluer la satisfaction des clients, notamment:

  • Le taux auquel le produit leur a été livré
  • Que le produit ait été endommagé ou non
  • Le bon produit a-t-il été livré? etc.

Ces données sont traitées et affichées sous forme de rapports lucides, ce qui facilite la saisie des informations. Ainsi, si le graphique du taux de livraison affiche une note inférieure à celle attendue, nous pouvons essayer de trouver la cause première et d’améliorer la vitesse de livraison.

Le rôle d’un professionnel de l’intelligence d’affaires

Maintenant, que fait un professionnel de l’intelligence d’affaires? Je suis sûr que cela a dû vous traverser l’esprit en passant par le scénario ci-dessus. Voici quelques tâches courantes effectuées par une personne BI typique:

  • Écrire des requêtes (SQL) ou des connecteurs pour récupérer des données à partir de bases de données relationnelles/ NoSQL
  • Écrire des requêtes (SQL) pour traiter les données et calculer les métriques métier
  • Code de conception pour créer des graphiques avec des widgets interactifs pour visualiser les métriques métier
  • Créer des tableaux de bord à partir des graphiques et les déployer pour être utilisés par l’utilisateur final

Les compétences requises pour devenir un professionnel de la BI varient d’un projet à l’autre. Mais globalement, vous devez avoir une solide connaissance d’un outil de BI, tel que Tableau, PowerBI, Qlik, ainsi qu’une certaine expérience dans un langage de programmation comme Python, R ou SQL. La connaissance du domaine et la pensée structurée sont également recherchées.

Power BI est l’un des outils de BI les plus populaires et les plus puissants sur le marché. Ce sera notre objectif dans cet article. Avant d’y arriver, voici une merveilleuse illustration d’une architecture de business intelligence typique:

Exemple d’architecture d’intelligence d’affaires

Qu’est-ce que Power BI ?

Power BI est un outil de business intelligence populaire et incroyablement puissant développé par Microsoft. Il a différentes saveurs et offres. La version la plus basique est gratuite, mais elle permet d’effectuer facilement des exercices de business Intelligence de taille moyenne.

En termes généraux, Power BI est une suite de solutions d’analyse d’entreprise basée sur le cloud qui fournit les outils nécessaires pour transformer de vastes volumes de données entre silos en informations accessibles. Il a toujours été classé dans le Magic Quadrant de Gartner BI.

Power BI est populaire pour sa polyvalence, son interactivité, ses conceptions esthétiques, sa connectivité étendue aux bases de données et sa facilité de création de tableaux de bord à faible effort. Il tire également parti de la prise en charge d’autres outils de son écosystème Microsoft – Azure, Cortana, SQL Server, Azure Active Directory, Azure Blob Storage, etc.

Voici quelques choses intéressantes que Power BI peut faire:

  • Alertes et visualisation en temps réel pour surveiller la santé des équipements de fabrication. Cela se fait en transmettant les données des capteurs IoT via IoT Azure Hub, Azure Data Factory, Cognos DB, puis analysées dans Power BI
  • Créez et récupérez des graphiques et des rapports et tableaux de bord Power BI en donnant des instructions vocales à l’aide de l’assistant vocal Windows Cortana

Expressions d’analyse de données (DAX): Que sont-elles et pourquoi sont-elles nécessaires?

Nous pouvons lire des données dans Power BI à partir de fichiers CSV ou d’une base de données. Nous pouvons également fusionner des tables dans Power BI. Très souvent, les données nécessaires au traçage sont facilement disponibles dans les colonnes du tableau (bien que ce ne soit pas toujours le cas).

Considérons une situation où nous devons modifier ou modifier les données pour améliorer nos tableaux de bord. Supposons que les modifications personnalisées dont nous avons besoin ne soient pas facilement disponibles dans Power BI. Que faisons-nous alors ? Comment pouvons-nous effectuer ce type de modification et d’analyse de données?

La réponse est DAX (abréviation des expressions d’analyse de données). DAX est utilisé pour apporter des informations significatives cachées dans les données brutes. En termes simples, DAX est utilisé pour la manipulation de données.

Il y a certaines règles que nous devons suivre pour utiliser DAX. Vous comprendrez rapidement ces règles si vous êtes familier avec les fonctions Excel. DAX n’est qu’une forme avancée de cela.

Il y a deux endroits où nous écrivons DAX:

  • Colonne calculée
  • Mesure calculée

Voyons ce que ces deux représentent:

  • Les colonnes calculées sont très similaires aux colonnes régulières que nous voyons dans la plupart des ensembles de données. La différence est que les colonnes calculées sont le résultat de nos calculs en utilisant deux colonnes ou plus ou en utilisant des colonnes de tables différentes. Ils peuvent être utilisés lorsque nous voulons effectuer des calculs en ligne
  • La mesure calculée, en revanche, est similaire à une colonne calculée. Cependant, ils n’occupent aucune mémoire physique et leurs résultats ne peuvent pas être vus sous la forme d’une colonne. Nous l’utilisons généralement lorsque nous voulons effectuer des calculs dynamiques sur un groupe de lignes ou en regroupant des données

Implémentation des fonctions DAX dans Power BI

Nous allons travailler sur quelques commandes DAX utiles et leurs fonctions dans cette section. Nous utiliserons l’ensemble de données ‘Sample Super Store’. Vous pouvez télécharger le jeu de données ici et commencer à expérimenter par vous-même!

L’ensemble de données contient trois tables : ‘Orders’– ‘Returns’ et ‘Users’. Allez-y et chargez l’exemple de fichier Excel de jeu de données Superstore dans Power BI.

Ouvrez Power BI et recherchez « Obtenir des données » dans l’onglet « Accueil ». Sélectionnez Excel, puis accédez au fichier de jeu de données présent sur votre machine locale. Chargez le fichier entier dans votre fenêtre BI.

Maintenant, allons-y!

LOOKUP()

La fonction de RECHERCHE est assez similaire à Vlookup dans Microsoft Excel.

Le troisième tableau de notre jeu de données contient les détails de tous les gestionnaires par région. Maintenant, voici où la RECHERCHE vient en main. Nous pouvons effectuer une recherche de la colonne « Gestionnaire » de la table « utilisateurs » par rapport à la colonne « Région » correspondante de la table « commandes ».

Alors, comment effectuons-nous une recherche dans Power BI? Il y a deux choses dont nous devons nous souvenir:

  1. Nous avons besoin d’une colonne commune pour effectuer une recherche
  2. Nous avons également besoin de valeurs uniques dans au moins une des colonnes correspondantes choisies parmi deux tables différentes. La syntaxe de base pour la recherche est:
LOOKUPVALUE(Result Column Name, Search Column Name, Search Column value)

Mettre cette syntaxe à l’aide de nos variables de jeu de données:

Manager = LOOKUPVALUE(Users,Users,Orders)

FILTER() & CALCULATE()

Le DAX affiché ci-dessous est similaire à la fonction group by. Il agrège dynamiquement une colonne en fonction du filtre. Cela est utile lorsque nous créons une table dans les tableaux de bord Power BI et que nous devons filtrer une seule colonne (alors que la colonne restante n’est pas affectée par le filtre).

Ce DAX est pratique où chaque colonne utilisée dans la table peut avoir son propre filtre. Prenons un exemple pour comprendre comment cela fonctionne.

Nous voulons calculer la somme des ventes par région. Ainsi, tout d’abord, la fonction de filtre divise la colonne de région en nord, sud, est et ouest. Ensuite, il calcule la somme des ventes en fonction de la ségrégation. Nous utilisons une mesure ici car une région particulière peut avoir un nombre quelconque de lignes impliquées dans celle-ci.

Ici, nous déclarons une variable reg qui agit comme une clé pour le filtre. Nous pouvons déclarer une variable en utilisant le mot-clé VAR. Le mot clé RETURN nous donne le résultat du calcul (somme des ventes, dans notre exemple). Le résultat que nous obtenons du DAX calculé est:

Imbriqué SI la condition

Considère la table des ordres dans notre jeu de données. La colonne  » Ordre prioritaire  » comporte cinq valeurs en dessous. Supposons que nous ayons besoin de valeurs entières au lieu des valeurs d’origine présentes dans cette colonne. La déclaration Imbriquée IF est notre amie ici:

Nested IF = IF(Orders ="Critical", 5, IF(Orders ="High", 4, IF(Orders = "Medium", 3, IF(Orders = "Low", 2, IF(Orders = "Not Specified", 1)))))

Mise en forme conditionnelle

La mise en forme conditionnelle est l’une des fonctionnalités les plus couramment utilisées de Microsoft Excel. Et nous pouvons également tirer parti de cela à l’intérieur de Power BI!

La mise en forme conditionnelle, pour ceux qui ne l’ont pas utilisée auparavant, est la possibilité de changer la couleur de police d’une colonne en fonction d’une condition d’une autre colonne. Cela peut être fait en créant une nouvelle colonne selon notre condition, puis en utilisant cette colonne pour définir des règles dans l’onglet Mise en forme conditionnelle.

Essayons ceci avec un exemple de notre exemple de jeu de données Superstore.

Nous voulons changer la couleur des valeurs affichées dans la colonne ‘Ordre prioritaire’ de la table des commandes. Par exemple, toutes les valeurs « critiques » doivent être de couleur rouge, toutes les valeurs « élevées » doivent être de couleur verte, etc.

Nous pouvons utiliser la colonne imbriquée IF que nous avons créée ci-dessus car les conditions sont déjà spécifiées. Définissez des règles dans l’onglet mise en forme conditionnelle – si la valeur de la colonne créée ci-dessus est 1, la couleur de la police doit être rouge Si la valeur est 2, alors elle doit être orange, etc.

Voici une image pour montrer comment vous pouvez le faire dans Power BI:

Fractionnement d’une chaîne Basée sur des délimiteurs

Une autre fonction Excel courante que nous pouvons utiliser dans Power BI:

customer_split_1 = PATHITEM(SUBSTITUTE(Orders," ","|"),1)

La fonction PATHITEM ci-dessus renvoie la chaîne résultante. La fonction SUBSTITUTE remplace le délimiteur spécifié par un caractère particulier et récupère le mot correspondant en fonction de la valeur mentionnée.

Par exemple, effectuons une division sur le champ ‘Nom du client’. Ici, l’espace «  » sera le délimiteur et nous l’avons remplacé par un pipeline « | ». Nous n’avons besoin que du prénom d’un client, nous avons donc spécifié 1. Vous pouvez modifier cette valeur et voir les résultats que vous obtenez.

Maintenant, effectuons trois scissions comme ceci et nommons-les comme customer_split_1, customer_split_2, customer_split_3 respectivement.

Récupérer une lettre particulière d’un mot

Et si nous voulions extraire uniquement une lettre particulière d’un mot? Cela semble délicat, mais c’est en fait assez facile dans Power BI:

customer_initial_1 = LEFT(Orders,1)

Nous l’avons fait en une seule ligne de code!

Disons que le nom d’un client particulier est « Helen Stein » et que la division est divisée en deux parties. Nous utilisons le DAX ci-dessus pour obtenir la première lettre du premier mot divisé (Helen). La fonction LEFT renvoie le nombre de caractères en se positionnant au début de la chaîne. Si nous donnons 2 au lieu de 1, le DAX ci-dessus renverra « He » au lieu de « H ».

Chaînes concaténantes

Nous nous trouvons souvent dans des situations où nous devons combiner deux mots ensemble. Pour voir comment cela fonctionne dans Power BI, supposons que nous ayons plusieurs initiales dans nos données.

Nous devons spécifier uniquement les initiales du client dans la visualisation plutôt que leur nom entier. Cela aidera à garder la table soignée et compacte:

customer_initials = CONCATENATE(Orders,CONCATENATE(Orders,Orders))

La fonction concaténer relie les chaînes entre elles. Ici, nous avons effectué une concaténation de trois colonnes:

WEEKDAY()

La fonction WEEKDAY renvoie un nombre entier nous donnant le jour en cours. Voyons le jour où quelques commandes ont été expédiées:

weekday = WEEKDAY(Orders,2)

Le nombre entier affiché ci-dessus spécifie le jour de début:

  • 1 – Commence le dimanche = 1 et se termine le samedi = 7
  • 2 – Commence le lundi = 1 et se termine le dimanche = 7
  • 3 – Commence le lundi = 0 et se termine le dimanche = 6

DATE Fractionnée

Il y a des moments où nous devons dé-pivoter la date pour certains projets. Voici les bonnes nouvelles – nous pouvons le faire avec l’aide de DAX et de l’éditeur de requêtes dans Power BI.

Maintenant, nous avons deux colonnes – date de commande et date d’expédition. Nous voulons supprimer les dates comprises entre les deux intervalles. Prenons la date de commande comme 01-01-2015 et la date d’expédition comme 03-01-2015. Comme il y a une différence de 3 jours entre eux, cette ligne sera répertoriée trois fois.

Nous pouvons le faire via l’éditeur de requêtes dans Power BI. Sélectionnez l’option « Colonne personnalisée » dans l’onglet « Ajouter une colonne ». La fenêtre ci-dessous apparaît et nous pouvons ajouter un nom de colonne et utiliser la requête DAX:

Ensuite, recherchez la colonne DATE dans notre jeu de données. Cliquez sur la petite case à l’intérieur de l’en-tête de colonne de DATE et sélectionnez l’option « Étendre aux nouvelles lignes »:

Remarquez comment les valeurs apparaissent sous la forme de nombres entiers? Maintenant, faites un clic droit sur la colonne et changez le type de données au format « Date »:

Agrégations complexes Basées sur la DATE

Travailler avec des données de date est un défi assez compliqué. Il y a beaucoup plus que de simplement diviser les différents jours, mois, etc.

Dans cette section, nous allons travailler sur un exemple d’agrégation complexe basée sur des dates. Par exemple, quel est le nombre total d’heures répertoriées pour les 2 prochaines semaines ou les 2 dernières semaines?

Nous allons changer notre jeu de données pour cette section. Vous pouvez télécharger le nouvel ensemble de données, appelé ‘Weekcal’, à partir de Forecast. Cet ensemble de données est modélisé sur l’allocation de temps d’équipe et un outil de planification appelé Float. Float nous aide à assigner des tâches et à calculer les heures estimées pour les membres de l’équipe.

Il y a une mise en garde dans Float dont nous devrions être conscients. Une semaine commence toujours à partir du lundi dans l’outil Float. Par exemple, si vous souhaitez calculer les heures attribuées pour la semaine prochaine à partir du jeudi, vous trouverez les heures attribuées du lundi au vendredi le plus récent et non de ce jeudi au jeudi suivant.

Maintenant, l’ensemble de données contient les fonctionnalités ci-dessous:

  • Jour de début – Jour de début de la tâche
  • Date de fin – Jour de fin de la tâche
  • Heures / jour – Nombre d’heures consacrées à la tâche par jour
  • Nom de la tâche – Nom de la tâche

Supposons que nous sommes intéressés à trouver le nombre d’heures allouées pour la semaine prochaine. Nous pouvons le faire en utilisant la logique ci-dessous:

FORECAST_1 WEEK = if (Forecast1>=TODAY()-(WEEKDAY(TODAY(),2)-1) && Forecast1<=TODAY()-(WEEKDAY(TODAY(),2)-1)+7,DATEDIFF(Forecast1,Forecast1,DAY)+1 * Forecast1,IF(Forecast1 > TODAY()-(WEEKDAY(TODAY(),2)-1) ,0,IF(Forecast1<=TODAY()-(WEEKDAY(TODAY(),2)-1) && Forecast1<=TODAY()-(WEEKDAY(TODAY(),2)-1)+7 && Forecast1>=TODAY()-(WEEKDAY(TODAY(),2)-1),DATEDIFF(TODAY()-(WEEKDAY(TODAY(),2)-1),Forecast1,DAY)* Forecast1,IF(Forecast1>=TODAY()-(WEEKDAY(TODAY(),2)-1) && Forecast1 >=TODAY()-(WEEKDAY(TODAY(),2)-1)+7,DATEDIFF(Forecast1,TODAY()-(WEEKDAY(TODAY(),2)-1)+7,DAY)* Forecast1,IF(Forecast1<=TODAY()-(WEEKDAY(TODAY(),2)-1)&& Forecast1>=TODAY()-(WEEKDAY(TODAY(),2)-1)+7,DATEDIFF(TODAY()-(WEEKDAY(TODAY(),2)-1),TODAY()-(WEEKDAY(TODAY(),2)-1)+7,DAY) * Forecast1,BLANK())))))
  • TODAY() – (WEEKDAY(TODAY(), 2) – 1 fonction renvoie le lundi courant de la semaine
  • La fonction DATEDIFF renvoie la différence entre deux dates

Consultez le tableau ci-dessous pour voir les heures estimées pour chaque tâche pour la semaine suivante:

Notes de fin

Power BI est un outil puissant et facile à utiliser pour créer des tableaux de bord rapides avec une variété de sources de données. Les requêtes DAX sont utilisées pour mapper les données, créer de nouvelles variables et métriques métier et manipuler les données. Cet article donne un guide bref et rapide pour commencer votre voyage DAX.

Vous devriez également consulter les tutoriels officiels de Microsoft pour Power BI – une excellente ressource!

Nous espérons que cet article vous a été utile. Nous sommes impatients d’entendre vos commentaires et commentaires. Bon tableau de bord, ou devrions-nous dire Bon DAXing!

À propos des auteurs

Kirthi Tej Yendloori

Kirthi Tej est analyste de données chez Indium software. Il a une année d’expérience dans la visualisation de données et est extrêmement intéressé par l’apprentissage automatique. Il aime voyager.

You might also like

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.