Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Ce tutoriel montre comment utiliser SemPy (préversion) pour calculer des mesures dans des modèles sémantiques Power BI.
Dans ce tutoriel, vous allez apprendre à :
- Évaluer les mesures Power BI par programmation à l’aide de l’interface Python de la bibliothèque de liens sémantiques (SemPy)
- Découvrez les composants SemPy qui aident à ponter l’IA et la BI :
- FabricDataFrame : structure de type pandas améliorée avec des informations sémantiques
- Fonctions qui obtiennent des modèles sémantiques, notamment des données brutes, des configurations et des mesures
Prérequis
Obtenir un abonnement Microsoft Fabric. Ou, inscrivez-vous pour un essai gratuit de Microsoft Fabric.
Connectez-vous à Microsoft Fabric.
Basculez vers Fabric à l’aide du sélecteur d’expérience situé en bas à gauche de votre page d’accueil.
Dans le volet de navigation, sélectionnez Espaces de travail, puis sélectionnez votre espace de travail pour le définir comme espace de travail actuel.
Téléchargez le modèle sémantique PBIX.pbix de l’exemple Analyse de la vente au détail et chargez-le dans votre espace de travail.
Suivre le notebook
Le notebook powerbi_measures_tutorial.ipynb vient avec ce tutoriel.
Pour ouvrir le bloc-notes associé pour ce didacticiel, suivez les instructions de Préparer votre système pour les didacticiels de science des données pour importer le bloc-notes dans votre espace de travail.
Si vous préférez copier et coller le code de cette page, vous pouvez créer un nouveau notebook.
Assurez-vous d’attacher un lakehouse au notebook avant de commencer à exécuter du code.
Configurer le notebook
Dans cette section, vous configurez un environnement de notebook.
Installez
SemPyà partir de PyPI à l’aide%pipde l’inline dans le notebook.%pip install semantic-link-sempyImportez les modules que vous utiliserez ultérieurement.
import sempy.fabric as fabricConnectez-vous à l’espace de travail Power BI et répertoriez les modèles sémantiques dans l’espace de travail.
fabric.list_datasets()Charger le modèle sémantique. Dans ce tutoriel, vous utilisez l’exemple sémantique Analyse de la vente au détail.
dataset = "Retail Analysis Sample"dataset = "Retail Analysis Sample PBIX"
Lister les mesures d’espace de travail
Utilisez SemPy list_measures pour répertorier les mesures dans un modèle sémantique :
fabric.list_measures(dataset)
Évaluer les mesures
Utilisez la fonction semPy evaluate_measure pour évaluer les mesures de différentes façons.
Évaluer une mesure brute
Utilisez la fonction SemPy evaluate_measure pour calculer la mesure préconfigurée nommée « Taille moyenne de la zone de vente ».
fabric.evaluate_measure(dataset, measure="Average Selling Area Size")
Évaluer une mesure avec groupby_columns
Regroupez le résultat par colonnes à l’aide du groupby_columns paramètre :
fabric.evaluate_measure(dataset, measure="Average Selling Area Size", groupby_columns=["Store[Chain]", "Store[DistrictName]"])
Ce code regroupe par Store[Chain] et Store[DistrictName].
Évaluer une mesure avec des filtres
Utilisez le paramètre pour limiter les filters résultats à des valeurs de colonne spécifiques :
fabric.evaluate_measure(dataset, \
measure="Total Units Last Year", \
groupby_columns=["Store[Territory]"], \
filters={"Store[Territory]": ["PA", "TN", "VA"], "Store[Chain]": ["Lindseys"]})
Dans cet exemple, Store est la table, Territory est la colonne et PA est une valeur autorisée.
Évaluer une mesure sur plusieurs tables
Regrouper par colonnes sur plusieurs tables du modèle sémantique.
fabric.evaluate_measure(dataset, measure="Total Units Last Year", groupby_columns=["Store[Territory]", "Sales[ItemID]"])
Évaluer plusieurs mesures
La evaluate_measure fonction vous permet de fournir plusieurs identificateurs de mesure et de retourner les valeurs calculées dans un seul DataFrame:
fabric.evaluate_measure(dataset, measure=["Average Selling Area Size", "Total Stores"], groupby_columns=["Store[Chain]", "Store[DistrictName]"])
Utiliser le connecteur XMLA Power BI
Le client de modèle sémantique par défaut utilise les API REST Power BI. Si les requêtes échouent avec ce client, basculez vers le point de terminaison Power BI XMLA en définissant use_xmla=True. Les paramètres SemPy sont identiques pour les calculs de mesure avec XMLA.
fabric.evaluate_measure(dataset, \
measure=["Average Selling Area Size", "Total Stores"], \
groupby_columns=["Store[Chain]", "Store[DistrictName]"], \
filters={"Store[Territory]": ["PA", "TN", "VA"], "Store[Chain]": ["Lindseys"]}, \
use_xmla=True)
Contenu associé
Consultez d’autres tutoriels sémantiques et SemPy :
- Tutoriel : Nettoyer les données avec des dépendances fonctionnelles
- Tutoriel : Analyser les dépendances fonctionnelles dans un modèle sémantique d’échantillon
- Tutoriel : Découvrir des relations dans un modèle sémantique à l’aide d’un lien sémantique
- Tutoriel : Découvrir des relations dans le jeu de données Synthea, à l’aide d’un lien sémantique
- Tutoriel : Valider des données à l’aide de SemPy et Great Expectations (GX)