Pourquoi et comment intégrer Python dans Power BI ?

Par Khaoula BENYAHYA, Data Analyst

 

La visualisation des données nous aide à identifier des modèles, des tendances et des corrélations qui pourraient ne pas être détectés autrement. En plaçant les données dans un contexte visuel, nous améliorons notre compréhension des données. Power BI est un outil parmi d’autres pour la visualisation des données.

Qu’est-ce que Power BI ?

Power BI est un outil de business intelligence (BI) qui sert à la gestion, l’analyse, la visualisation et le partage de données au sein d’une organisation.

Le principe de Power BI, c’est le self-service BI. Cela veut dire que l’utilisateur final n’a pas besoin d’avoir des connaissances informatiques poussées pour être en mesure de produire son propre
rapport.

See the source image

Pourquoi utiliser Power BI ?

Power BI présente de nombreux avantages :

1. Mémoire et vitesse : de gros volumes de données peuvent être rapidement collectées et analysées.

2. Sécurité des données : Power BI permet de publier des rapports en toute sécurité et de contrôler librement l’accessibilité des données.

3. Savoir-faire technique avancé non requis : pour rendre ainsi accessible au plus grand nombre d’usagers.

4. Interaction entre les diverses solutions Microsoft : Les solutions Microsoft s’intègrent facilement avec Power BI. De plus, de nombreuses fonctionnalités sont partagées entre les différentes applications de Microsoft. Par exemple, Power BI repose sur le langage DAX et le langage DAX, repose en partie sur la bibliothèque de fonctions Excel. Il y a donc un gain important au niveau de l’apprentissage des usagers.

5. Coût relativement faible : l’application Desktop est gratuite et pour tirer avantage de toutes les fonctionnalités de sécurité, partage, gouvernance, etc., il faut adhérer à une licence.

6. Fonctionnalités pertinentes offertes aux créateurs : en voici quelques-unes :

  • Large choix de connexion aux sources de données
  • Options de personnalisation riches et puissantes pour la création des tableaux de bord.
  • Accès à de nombreux visuels et modèles de tiers de la communauté Power BI
  • Création de visuels basés sur des fonctionnalités d’IA.
  • Bénéficier de compléments comme R et Python pour l’analyse avancée.

Intérêt de faire du Python dans Power BI :

Python est devenu l’un des langages de données à la croissance la plus rapide et de plus en plus utile. Profitant de cette tendance, Power BI a introduit la prise en charge de Python en août 2018.

Cette intégration ouvre un large éventail de possibilités en termes d’extraction et de nettoyage des données ainsi que de création de visuels attrayants et entièrement personnalisés.

Python est indiscutablement l’un des langages préférés des statisticiens, des data scientists et des data analysts. Par conséquent, pour les data analysts ou data scientists qui développent déjà en Python, mais qui ne sont pas chargés d’utiliser Power BI pour une raison quelconque, ils peuvent facilement intégrer leur corpus de travail existant dans cet outil.

En tant que professionnels de la BI, si on souhaite effectuer certaines tâches de data science, on doit nous appuyer sur une équipe de data scientists. D’un autre côté, un développeur Python doit s’appuyer sur l’équipe BI pour présenter son analyse dans un format présentable. A l’inverse, et c’est tout l’intérêt, Power BI supprime cette co-dépendance car il est possible désormais d’exécuter Python dans un environnement intégré.

Qu’est-ce que Python ?

C’est un langage de programmation open source qui présente de nombreuses caractéristiques intéressantes. Il est :

  • Multiplateforme : C’est-à-dire qu’il fonctionne sur de nombreux systèmes d’exploitation : Windows, Mac OS X, Linux, Android, iOS, depuis les mini-ordinateurs Raspberry Pi jusqu’aux supercalculateurs.
  • Gratuit : Vous pouvez l’installer sur autant d’ordinateurs que vous voulez (même sur votre téléphone !).
  • De haut niveau : Il demande relativement peu de connaissance sur le fonctionnement d’un ordinateur pour être utilisé.
  • Langage interprété : Un script Python n’a pas besoin d’être compilé pour être exécuté, contrairement à des langages comme le C ou le C++.
  • Orienté objet : C’est-à-dire qu’il est possible de concevoir en Python des entités qui miment celles du monde réel avec un certain nombre de règles de fonctionnement et d’interactions.
  • Relativement simple à prendre en main (notion très relative !).
  • Très utilisé en bio-informatique et plus généralement en analyse et science de données.


Exemples de fonctionnalités de Python dans Power BI

L’utilisation de Python dans Power BI offre plusieurs fonctionnalités : 1. Importer des données en utilisant un script Python. Sur le ruban d’accueil, cliquez sur Obtenir les données > Plus… puis choisissez Script Python, puis au code !

Une image contenant texte Description générée automatiquement
Figure 1 : Importation de donnée avec un script Python

2. Intégrer Python dans l’éditeur Power Query de Power BI Desktop. Cela permet d’effectuer un nettoyage des données à l’aide de Python et d’effectuer une mise en forme et une analyse avancée de données dans les datasets, y compris le traitement des données manquantes, les prédictions et le clustering, pour n’en nommer que quelques-uns. Pour ce faire, il faut :

  • Ouvrir Power Query
  • Sur l’onglet « Transformer », cliquer sur « Exécuter le script Python »
  • Sur la fenêtre qui s’ouvre, écrire le code pour le traitement souhaité. Par exemple pour un cas simple de traitement de valeurs manquantes :

Une image contenant texte Description générée automatiquementFigure 2 : Exécution du script Python

 

3. Incorporer des fonctionnalités du Machine Learning en tant qu’étape du workflow.

4. Automatiser et optimiser les processus.

5. Créer des visuels personnalisés : on va détailler cela dans la partie suivante.

Comment ajouter des visuels personnalisés en Python dans Power BI ?

 

1- Installation de Python : avant d’exécuter des scripts Python dans Power BI Desktop, vous devez installer Python sur votre ordinateur local. En effet, Power BI Desktop n’inclut, ne déploie, ni n’installe le moteur Python. Une fois Python installé, il faut vérifier que les scripts Pythons sont activés sur Power BI Desktop.

Pour cela, sélectionnez : Fichier > Options et paramètres > Options > Création de scripts Python. Au niveau de la page Options de scripts Python, vérifiez que le chemin local d’installation de Python est détecté, ou si nécessaire l’indiquer dans Répertoires de base Python détectés le chemin d’accès.

Graphical user interface, text, application Description automatically generated
Figure 3 : Options de script Python

 

2- Installation des packages requis : les packages pandas (bibliothèque pour la manipulation et l’analyse des données) et matplotlib (bibliothèque de traçage 2D de Python qui produit des figures de qualité) sont nécessaires pour que Python visual fonctionne, il est donc requis de les installer grâce à la commande pip install sur une console ou un interpréteur de commandes.

3- Création de visualisations avec Python dans Power BI Desktop :

a. Cliquer sur le visuel Python dans le panneau de visualisation :

A screenshot of a computer Description automatically generated with low confidenceFigure 4 : Les visuels Python

 

b. Un espace réservé au visuel Python apparaît dans le canevas de Power BI. En cliquant dessus, on voit apparaître un « éditeur de script Python » en bas de la page.

Graphical user interface Description automatically generated with low confidenceFigure 5 : Editeur de script Python

c. Après avoir chargé un jeu de données dans Power BI, glisser et déposer les attributs/champs à visualiser dans la section Valeurs :

Graphical user interface, application Description automatically generated

Figure 6 : Section Valeurs

 

d. Désormais, les données peuvent être utilisées pour créer des tracés à l’aide du script Python. Un code Python est généré pour les champs sélectionnés.

Text Description automatically generated

Figure 7 : Éditeur de Script Python

e. Le code Python peut être exécuté en cliquant sur le bouton  » play« .


Contraintes et limitations de Python dans Power BI :

Python est une excellente fonctionnalité à utiliser avec Power BI, mais il présente quelques limitations :

  • Taille des données : les données utilisées par le visuel Python pour le traçage sont limitées à 150 000 lignes. Si plus de 150 000 lignes sont sélectionnées, seules les 150 000 premières lignes sont utilisées et un message s’affiche sur l’image. En outre, les données d’entrée ont une limite de 250 Mo.
  • Résolution : tous les visuels Python sont affichés dans une résolution de 72 ppp.
  • Temps de calcul : si le calcul d’un visuel Python prend plus de cinq minutes, le délai d’exécution est dépassé, ce qui provoque une erreur.
  • Relations : Comme avec d’autres visuels Power BI Desktop, si des champs de données provenant de différentes tables, sans aucune relation définie entre elles, sont sélectionnés, une erreur se produit.

· Si le jeu de données d’entrée d’un visuel Python a une colonne qui contient une valeur de chaîne de plus de 32766 caractères, cette valeur est tronquée.

· Les visuels Python sont actualisés lors de la mise à jour, du filtrage et de la sélection des données. Toutefois, l’image elle-même n’est pas interactive et ne peut pas être la source du filtrage croisé.

· Les visuels Python répondent à la sélection d’autres visuels, mais vous ne pouvez pas cliquer sur des éléments dans le visuel Python pour appliquer un filtre croisé à d’autres éléments.

· Seuls les tracés représentés sur l’écran Python par défaut s’affichent correctement sur le canevas. Évitez d’utiliser explicitement un autre écran Python.

· Les visuels Python ne prennent pas en charge le renommage des colonnes d’entrée. Les colonnes sont référencées par leur nom d’origine durant l’exécution du script.

· Uniquement les packages Python suivants sont actuellement pris en charge : Numpy, Pandas, Matplotlib, Seaborn,Scipy, Scikit-learn, Statsmodels, Xgboost.

· Sur l’éditeur de script Python sur Power BI, on ne retrouve pas les fonctionnalités d’un IDE (Integrated Development Environment) indépendant, telle que IntelliSense : un assistant de complétion de code, qui reste une des fonctionnalités les plus importantes pour un développeur. Cela ne sera pas très contraignant puisqu’en général, on ne sera pas amené à écrire des centaines lignes de code sur Power BI. Cette limite peut être contournée par la possibilité de développer sur votre éditeur externe préféré, puis directement importer le code sur Power BI Desktop.

Laisser un commentaire