«Vous pouvez écrire du code Python avec JMP !»
Bien que cela soit vrai, cette affirmation à elle seule pourrait amener certains à penser : « Pourquoi s'embêter à l'écrire dans JMP alors qu'on peut simplement utiliser un éditeur Python ou un environnement de développement intégré ? »
Je vais maintenant vous expliquer la fonctionnalité d'intégration Python incluse dans JMP. Grâce à cette fonctionnalité,
« Les fonctionnalités de JMP peuvent être améliorées et étendues grâce à un environnement Python. »
C'est l'un des avantages.

Cependant, même avec cette explication, vous pourriez encore avoir du mal à comprendre et vous demander : « Alors, que peut-il faire exactement ? »
Par conséquent, dans cette série d'articles de blog (en 4 parties au total), j'expliquerai ce qu'il peut réellement faire et quels sont ses avantages, en utilisant des exemples de code et d'utilisation spécifiques.
Dans ce premier article, nous présenterons les avantages de combiner Python et JMP à travers un exemple simple. Plus précisément, nous aborderons les points suivants :
- JMP inclut un environnement Python.
- Comment écrire et exécuter du code Python à l'aide de l'éditeur de scripts Python
- Installation des paquets et paquets jmp/jmputils propres à JMP
- Exemple d'utilisation : visualiser des données d'indicateurs économiques obtenues avec pandas_datareader à l'aide du graphique à bulles de JMP.
*Cet article suppose l'utilisation de la version Windows de JMP.
L'environnement Python sera installé dans JMP.
Au moment de la rédaction de cet article, la dernière version de JMP est « JMP 19 », mais ses capacités d'intégration Python ont été considérablement étendues par rapport à la version précédente, « JMP 18 ».
Lors de l'installation de JMP, l'environnement Python est également installé dans le dossier d'installation. Par conséquent, il n'est pas nécessaire d'installer Python séparément sur la machine où vous utiliserez JMP.
De plus, cet environnement Python vous permet d'écrire et d'exécuter du code Python dans l'éditeur JMP, et d'utiliser le package saut pour manipuler les tables de données JMP et d'autres éléments.

*Remarque : les utilisateurs n’ont pas besoin d’exécuter eux-mêmes le fichier « jmp_python.exe » ci-dessus.
Éditeur de scripts Python
L'éditeur de scripts Python de JMP vous permet d'écrire et d'exécuter du code Python directement dans l'éditeur.
Dans le menu de la fenêtre d'accueil de JMP, sélectionner [Fichier] > [Nouveau] > [Script Python] ouvre l'éditeur de script Python. Le code saisi peut être exécuté en sélectionnant [Édition] > [Exécuter le script], et les résultats de l'exécution s'affichent dans la fenêtre de journalisation.

Installation et chargement du package
Lorsque vous utilisez des packages comme pandas ou NumPy en Python, vous devez d'abord les installer, puis les charger dans votre code à l'aide d'instructions d'importation .
De même, dans l'environnement intégré Python de JMP, vous devez installer les packages au sein de cet environnement pour pouvoir les utiliser.
De plus, vous pouvez utiliser les packages JMP natifs, appelés jmp et jmputils . Ces packages vous permettent principalement d'effectuer les opérations suivantes :
- saut : Manipulation des tables de données JMP (création de nouvelles tables, ajout/suppression/modification de colonnes, etc.), récupération d'informations à partir d'une table de données JMP ouverte.
- jmputils : Installation de paquets dans l'environnement Python intégré de JMP
Dans les exemples suivants, nous utiliserons le package Python pandas et le package pandas_datareader , installez-les donc avec la commande suivante.

Une fois installé dans l'environnement Python de JMP, vous n'aurez plus besoin de le réinstaller après la fermeture de JMP.
Avantages de l'utilisation de l'environnement Python intégré avec JMP
L'avantage d'utiliser l'environnement de développement intégré Python avec JMP réside dans sa capacité à combiner les atouts de Python et de JMP. Voici quelques-uns de leurs atouts respectifs :
Python : Permet d’utiliser des fonctionnalités et des méthodes analytiques non incluses dans JMP.
Python propose de nombreux packages permettant l'acquisition de données et l'utilisation des techniques d'analyse les plus récentes. Grâce à eux, vous pouvez intégrer à vos analyses des fonctionnalités et des méthodes qui ne sont pas incluses par défaut dans JMP.
JMP : Opération GUI,Je suis doué pour « explorer » les données.
En revanche, JMP excelle dans les fonctionnalités d'exploration de données telles que la manipulation de tableaux de données via une interface graphique, l'analyse interactive et la liaison de graphiques et de tableaux de données. Mettre en œuvre ces opérations uniquement en Python n'est pas chose aisée.
En d'autres termes, vous pouvez utiliser Python pour élargir la gamme des méthodes analytiques et JMP pour explorer et visualiser les résultats, complétant ainsi leurs forces respectives .
Ceci sera expliqué dans l'exemple 1 ci-dessous.
Exemple 1 : Chargement et visualisation de données d’indicateurs économiques à l’aide de pandas_datareader
Le package Python pandas_datareader peut être utilisé pour récupérer des données économiques spécifiques à chaque pays fournies par la Banque mondiale.
Nous utiliserons donc l'environnement Python intégré de JMP pour acquérir ces données et les charger sous forme de tableau de données JMP. De plus, nous utiliserons le graphique à bulles de JMP pour visualiser l'évolution des indicateurs année par année et pays par pays.
Données à obtenir : PIB annuel par habitant, espérance de vie et population des pays du G7 de 2000 à 2024.
Voici un exemple de code (Example1-1_WorldBank.py, inclus dans ce blog). Si vous programmez régulièrement en Python, vous constaterez que sa syntaxe est identique à celle du code Python classique.
Ce code décrit principalement les deux choses suivantes :
- Importez le package pandas_datareader pour récupérer les données de la Banque mondiale.
- Les données acquises (au format DataFrame) sont modifiées, notamment en changeant les noms des colonnes, puis importées en tant que table de données JMP.

jmp.from_dataframe() は、pandasなどのデータフレームからJMPのデータテーブルを作成する関数です。
- Dans le code ci-dessus, les seules parties spécifiques à JMP sont ` import jmp` et la dernière instruction `jmp.from_dataframe(df) `. Tout le reste est du code Python standard.
L'exécution de cette commande en sélectionnant [Édition] > [Exécuter le script] dans le menu de l'éditeur de script ouvrira un tableau de données JMP comme celui présenté ci-dessous.

Nous avons maintenant obtenu les données sous forme de tableau de données JMP, nous pouvons donc utiliser les fonctions de JMP pour visualiser et explorer les données à partir de là.
À titre d'exemple, en utilisant le [Bubble Plot] de JMP, vous pouvez spécifier les colonnes comme suit pour voir une animation de la relation entre le PIB et l'espérance de vie dans chaque pays au fil du temps.

Les rôles joués par Python et JMP dans ce code et son analyse ultérieure sont les suivants :
Python : Utilisation de pandas_datareader pour récupérer des données d'indicateurs économiques auprès de la Banque mondiale.
JMP : Visualise les données acquises à l'aide d'un graphique à bulles avec des fonctionnalités d'animation.
Voici un exemple de la façon dont la combinaison des forces des deux parties peut aboutir à une série d'analyses fructueuses.
De plus, le code écrit dans des scripts Python peut être enregistré au format de code Python (avec l'extension .py) en sélectionnant [Fichier] > [Enregistrer sous].
Détails des paquets jmp et jmputils (à l'aide de l'index des scripts)
Vous trouverez le détail des commandes disponibles dans les paquets jmp et jmputils dans l'index des scripts ([Aide] > [Index des scripts]). En sélectionnant « Python » dans le menu en haut à gauche, vous pourrez consulter la syntaxe, la description et des exemples de code pour chaque commande.

En conclusion
Dans le premier article, nous avons présenté le fait que JMP inclut un environnement Python, que vous pouvez exécuter du code à l'aide de l'éditeur de scripts Python et que les données obtenues avec Python peuvent être traitées comme une table de données JMP.
La prochaine fois ( Partie 2 )Cette section expliquera comment coder l'ensemble du processus, de l'acquisition des données à la visualisation (graphique à bulles), pour l'exemple 1, et abordera les différences entre l'écriture du code en Python (.py) et son écriture en JSL (.jsl).
par Naohiro Masukawa (JMP Japon)
Naohiro Masukawa - Communauté d'utilisateurs JMP