Partager via


Créer des colonnes calculées dans Power BI Desktop

Avec les colonnes calculées, vous pouvez ajouter de nouvelles données à une table déjà dans votre modèle. Mais au lieu d’interroger et de charger des valeurs dans votre nouvelle colonne à partir d’une source de données, vous créez une formule DAX (Data Analysis Expressions) qui définit les valeurs de la colonne. Dans Power BI Desktop, les colonnes calculées sont créées à l’aide de la nouvelle fonctionnalité de colonne dans vue Rapport, vue Table ou vue Modèle.

Contrairement aux colonnes personnalisées créées dans le cadre d'une requête à l'aide de Ajouter Colonne Personnalisée dans l'Éditeur Power Query, les colonnes calculées créées dans la vue Rapport , la vue Table ou la vue Modèle sont basées sur les données que vous avez déjà chargées dans le modèle. Par exemple, vous pouvez choisir de concaténer des valeurs à partir de deux colonnes différentes dans deux tables différentes, mais associées, d’ajouter ou d’extraire des sous-chaînes.

Les colonnes calculées que vous créez apparaissent dans la liste Champs comme n’importe quel autre champ, mais elles ont une icône spéciale montrant ses valeurs sont le résultat d’une formule. Vous pouvez nommer vos colonnes comme vous le souhaitez et les ajouter à une visualisation de rapport comme d’autres champs.

Capture d’écran de Power BI Desktop montrant les colonnes calculées dans la vue Champs.

Les colonnes calculées calculent les résultats à l’aide de DAX, un langage de formule destiné à fonctionner avec des données relationnelles comme dans Power BI Desktop. DAX inclut une bibliothèque de plus de 200 fonctions, opérateurs et constructions. Il offre une grande flexibilité dans la création de formules pour calculer les résultats pour presque tous les besoins d’analyse de données. Pour en savoir plus sur DAX, consultez Découvrir les principes de base de DAX dans Power BI Desktop.

Les formules DAX sont similaires aux formules Excel. En fait, DAX a de nombreuses fonctions identiques à Excel. Toutefois, les fonctions DAX sont destinées à fonctionner sur des données segmentées ou filtrées de manière interactive dans un rapport, comme dans Power BI Desktop. Dans Excel, vous pouvez avoir une formule différente pour chaque ligne d’un tableau. Dans Power BI, lorsque vous créez une formule DAX pour une nouvelle colonne, elle calcule un résultat pour chaque ligne de la table. Les valeurs de colonne sont recalculées si nécessaire, comme lorsque les données sous-jacentes sont actualisées et que les valeurs ont changé.

Examinons un exemple

Jeff est responsable de l’expédition chez Contoso et souhaite créer un rapport montrant le nombre d’expéditions vers différentes villes. Jeff a une table Geography avec des champs distincts pour la ville et l’état. Toutefois, Jeff souhaite que leurs rapports affichent les valeurs de la ville et de l’état sous la forme d’une valeur unique sur la même ligne. À l’heure actuelle, la table Geography de Jeff n’a pas le champ souhaité.

Capture d’écran de Power BI Desktop montrant le filtre Geography dans la vue Champs.

Mais avec une colonne calculée, Jeff peut rassembler les villes de la colonne City avec les états de la colonne State.

Jeff clique avec le bouton droit sur la table Géographie, puis sélectionne Nouvelle Colonne. Jeff entre ensuite la formule DAX suivante dans la barre de formule :

CityState = [City] & "," & [State]

Cette formule crée une colonne nommée CityState. Pour chaque ligne de la table Geography , elle prend des valeurs de la colonne City , ajoute une virgule et un espace, puis concatène les valeurs de la colonne State.

Jeff dispose désormais du champ souhaité.

Capture d’écran de Power BI Desktop montrant l’élément CityState coché dans le filtre Géographie de la vue Champs.

Il peut l’ajouter au canevas du rapport avec le nombre d’expéditions. Avec un effort minimal, Jeff dispose désormais d’un champ CityState qui peut être ajouté à n’importe quel type de visualisation. Lorsque Jeff crée une carte, Power BI Desktop sait déjà lire les valeurs de ville et d’état dans la nouvelle colonne.

Capture d’écran de Power BI Desktop montrant les données représentées dans un visuel Map.

Contexte d’expression

La propriété Expression Context détermine si les expressions DAX prenant en charge le contexte utilisateur, telles que les suivantes, peuvent être évaluées dynamiquement.

Les colonnes calculées prenant en charge le contexte utilisateur permettent des scénarios uniques tels que les traductions de données pour les modèles sémantiques multilingues. Pour plus d’informations , consultez les traductions de données.

La propriété Expression Context peut être définie en tant que propriété de colonne calculée.

Capture d’écran de Power BI Desktop montrant la propriété Expression Context pour une colonne calculée.

Matérialisation et performances

Pour l'optimisation des performances, la matérialisation des colonnes calculées doit être prise en compte. Les meilleures pratiques de rédaction DAX doivent être respectées pour éviter des opérations coûteuses lors de l'évaluation des colonnes calculées.

  • Les colonnes calculées non matérialisées peuvent avoir un impact négatif sur les performances des requêtes, car les valeurs doivent être dérivées au moment de la requête.
  • Les colonnes calculées matérialisées peuvent avoir un impact négatif sur les performances d’actualisation, car les valeurs doivent être dérivées au moment de l’actualisation.

Le tableau suivant présente les combinaisons du mode de stockage de table et des paramètres de contexte d'expression pris en charge.

Mode de stockage Standard (par défaut) Contexte utilisateur
Import Matérialisée Nonmatérialisé
Direct Lake sur OneLake Non matérialisé Non matérialisé
Direct Lake sur SQL S/O Sans objet
Requête Directe Non-matérialisé Non-matérialisé
Dual Matérialisé (Importation), non matérialisé (DirectQuery) Nonmatérialisé
DirectQuery sur les modèles sémantiques Power BI Non matérialisé S/O

Cet article fournit une présentation rapide des colonnes calculées ici. Pour plus d’informations, consultez les ressources suivantes :