Mise à jour du 27 juin 2018 : JMPtoRADdinBuilder.jmpaddin contient désormais des fichiers source JSL non chiffrés.
Mise à jour version 2
Je suis heureux d'annoncer que JMP to R Add-In Builder prend désormais en charge la sortie de tous les composants de sortie (tableau, tracé, etc.) sous la forme d'un seul rapport ! Pour activer cette fonctionnalité, installez le "JMPtoRADdinBuilderWithReport" ci-joint. Lors de la définition de vos composants de sortie, cochez la case "Retourner tous les résultats sous forme de rapport".
Pour voir un exemple du format de sortie mis à jour, faites défiler jusqu'à la section correspondante dans l'article ci-dessous. La fonction SVM avec la sortie de rapport activée est également jointe.
Qu'est-ce que le générateur de compléments JMP vers R ?
Bien que JMP soit un logiciel statistique très puissant, les utilisateurs de JMP souhaiteront peut-être étendre JMP au-delà de ses capacités incluses en accédant à certaines fonctionnalités de R.
Cet été, compte tenu de la nécessité de rendre les fonctions R plus accessibles aux utilisateurs JMP sans quitter la plateforme JMP, j'ai créé cette interface utilisateur JMP de configuration guidée qui permet aux utilisateurs de définir et d'utiliser des compléments JMP personnalisés qui exécutent des fonctions R. Ce complément permet aux utilisateurs finaux d'analyser leurs données dans JMP à l'aide des fonctions R sans écrire de code JSL ou R.
Ce programme utilise la connexion JMP vers R et peut également être adapté pour créer des compléments personnalisés pour des fonctions dans d'autres langages, tels que Python et JSL lui-même.
Voir une démonstration vidéo de JMP to R Add-In Builder ici ou ci-dessous :
Exigences
- R doit être installé sur votre ordinateur. Installez R à partir de https://www.r-project.org/
- Le complément s'exécute uniquement sur le système d'exploitation Windows.
- Le cas échéant, installez les packages appropriés dans R que vous utiliserez dans votre code R.
Notes d'utilisation
- Si vous utilisez des sélections de colonnes ou des listes de colonnes dans votre complément, veillez à ouvrir votre table de données avant d'exécuter l'interface utilisateur de configuration.
- Chaque fonction créée n'aura qu'une seule liste de colonnes au maximum.
- Toutes les sélections de colonnes seront regroupées dans une seule colonne ; entrez la même colonne pour toutes les sélections de colonnes.
- Chacun des noms de boutons pour les sélections de colonnes doit être unique.
- Les sélections de colonnes et les listes de colonnes seront placées en haut de leur colonne respective.
- Dans votre code R, référencez votre table de données comme « dt ».
- Si vous ajoutez une colonne à une table et demandez à l'utilisateur de sélectionner le type de colonne, dans votre code R, faites référence à la chaîne qui contient le choix de l'utilisateur comme « colType ».
- Les valeurs des cases à cocher sont renvoyées sous la forme « 0 » (non cochée) ou « 1 » (cochée).
- Collez le code R comme vous le feriez normalement dans la console R, à l'exception de la différence suivante.
Lorsque vous référencez le nom d'une variable sous forme de chaîne en tant que paramètre d'une fonction, utilisez la fonction eval(parse()) dans R. Par exemple:
eval(parse(text=paste("x <- subset(dt, select=-", colnames(factor)[1], ")")))Ceci évalue l'expression et utilise la chaîne stockée dans colnames(factor)[1] dans l'opération de fonction.
Comment ça marche : création d'une fonction de machine à vecteurs de support (SVM) à titre d'exemple
ÉTAPE 0
Installez et ouvrez JMP to R Add-In Builder.
REMARQUE : Si vous utilisez des sélections de colonnes ou des listes de colonnes dans votre complément, veillez à ouvrir votre table de données avant d'exécuter l'interface utilisateur de configuration ET avant d'exécuter le complément que vous créez.
Step 0: Install and Open Add-InStep 0: Install and Open Add-In Étape 0 : installer et ouvrir le complément
ÉTAPE 1
Step 1: Enter Number of Components and ColumnsStep 1: Enter Number of Components and Columns Étape 1 : Saisissez le nombre de composants et de colonnes Le premier écran demande le nombre de composants* et de colonnes # dans votre complément.
*Les cinq types de composants pris en charge sont : case à cocher, liste de colonnes, sélection de colonne, menu déroulant et valeur numérique. Chaque sélection de colonne est livrée avec son propre bouton d'affectation, donc comptez chaque sélection de colonne et le bouton correspondant comme un seul composant.
# Le nombre de colonnes fait référence aux colonnes d'affichage dans lesquelles les composants apparaissent. Par exemple, il y a deux afficher les colonnes dans l'interface utilisateur pour cet exemple (voir ci-dessous).
REMARQUE : La colonne « Action » est regroupée avec la colonne de sélection de colonne, ce qui signifie que ces deux objets regroupés comptent comme une colonne .
ÉTAPE 2
Ensuite, pour chacun de vos composants, identifiez le type.
REMARQUE : entrez les composants dans l'ordre dans lequel vous souhaitez qu'ils apparaissent sur votre complément, par colonne. Cela signifie que tous les composants de chaque colonne doivent être dans un ordre séquentiel dans les listes déroulantes que vous avez spécifiées, mais vous n'êtes pas obligé de saisir des valeurs strictement colonne par colonne.
Par exemple, vous pouvez saisir les types du composant 1, colonne 1 ; puis composant 1, colonne 2 ; puis composant 2, colonne 1 ; puis composant 2, colonne 2 plutôt que colonne par colonne si vous le désirez.
Step 2: Enter Component TypesStep 2: Enter Component Types Étape 2 : Saisir les types de composants
ÉTAPE 3
Pour chaque composant, sélectionnez la colonne dans laquelle il doit apparaître.
Sur cet écran, définissez également les paramètres de chaque composant comme suit :
- Case à cocher : saisissez le nom (étiquette) du composant.
- Liste des colonnes : à part la sélection de la colonne, aucune action n'est nécessaire.
- Sélection de colonne : vérifiez toutes les propriétés qui s'appliquent à votre zone de sélection.
- Menu déroulant : saisissez le libellé du menu déroulant et les choix du menu. N'incluez PAS d'espace après les virgules (c'est-à-dire, listez les éléments comme a, b, c, d), mais les noms et les choix eux-mêmes peuvent contenir des espaces. Le premier nom que vous écrivez dans la liste sera considéré comme le nom du menu déroulant et le reste sera répertorié comme choix dans l'ordre dans lequel vous les saisissez.
- Valeur numérique : saisissez le nom (étiquette) du composant.
Step 3: Enter Component ParametersStep 3: Enter Component ParametersÉtape 3 : Saisir les paramètres du composant
ÉTAPE 4
Si votre complément utilise des sélections de colonnes, entrez les noms de chacun des boutons de vos sélections de colonnes correspondantes dans l’ordre dans lequel ils doivent apparaître. Sinon, cliquez sur « Suivant ».
Step 4: Enter Column Select Names, if ApplicableStep 4: Enter Column Select Names, if ApplicableÉtape 4 : Saisissez les noms de sélection de colonnes, le cas échéant
ÉTAPE 5
Cet écran affiche un aperçu de l’interface utilisateur du complément que vous avez créé.
Step 5: Add-In User Interface PreviewStep 5: Add-In User Interface PreviewÉtape 5 : Aperçu de l'interface utilisateur du complément
ÉTAPE 6
Sur cette page, nommez votre complément et donnez-lui une description (qui sera affichée sous le nom du complément).
Step 6: Name and Describe Add-InStep 6: Name and Describe Add-In Étape 6 : Nommer et décrire le complément
ÉTAPE 7
Sur cet écran, définissez les noms des variables d'entrée et de sortie qui seront utilisées dans votre code R. Il ne doit s'agir que d'un seul mot (sans espaces).
Pour les variables de sortie, N'incluez PAS d'espace après les virgules (c'est-à-dire répertoriez les variables comme a,b,c).
Step 7: Define Input and Output VariablesStep 7: Define Input and Output Variables Étape 7 : Définir les variables d'entrée et de sortie
ÉTAPE 8
Sur cet écran, entrez le code R que votre fonction exécutera. Le code R doit être dans la syntaxe R (c'est-à-dire qu'il peut être exécuté directement dans une console R).
Le code doit faire référence aux noms de variables que vous avez déclarés sur l'écran précédent.
Entrez également le nombre d'affichages de sortie pour la fonction. Les quatre types d'affichages de sortie actuellement pris en charge sont :
- Ajouter une colonne dans un tableau existant
- Tracé R le plus récent
- Table ouverte
- Fenêtre de résultats avec texte ou chiffres
Step 8: Enter R Code and Number of Output DisplaysStep 8: Enter R Code and Number of Output DisplaysÉtape 8 : Entrez le code R et le nombre d'affichages de sortie
Code R pour cet exemple :
library(e1071)
library(gridExtra)
theText <- paste("x <- subset(dt, select=-", colnames(factor)[1], ")")
eval(parse(text=theText))
y <- factor
svm_model <- svm(x, y, type=svmType)
modelText <- paste("second.svm <- svm(", colnames(factor)[1], " ~ ., data = dt)")
eval(parse(text=modelText))
summary(svm_model)
summary(second.svm)
pred <- predict(svm_model, x)
pred <- as.vector(pred)
if(is.list(y)) {y <- unlist(y)}
predTable <- table(pred,y)
predTable <- as.data.frame(predTable)
eval(parse(text=paste(colnames(y_var)[1], "<- as.vector(as.matrix(y_var))")))
eval(parse(text=paste(colnames(x_var)[1], "<- as.vector(as.matrix(x_var))")))
max1 <- eval(parse(text=paste("max(", colnames(y_var)[1], ")")))
max2 <- eval(parse(text=paste("max(", colnames(x_var)[1], ")")))
gridSize <- eval(parse(text=paste("max(c(", max1, ",", max2, "))")))
eval(parse(text=paste("plot(second.svm, dt, ", colnames(y_var)[1], " ~ ", colnames(x_var)[1], ", fill=TRUE, grid=gridSize)")))
ÉTAPE 9
Pour chacun des affichages de sortie que vous avez sélectionnés, spécifiez le type.
Step 9: Select Output Display TypesStep 9: Select Output Display Types Étape 9 : Sélectionner les types d'affichage de sortie
ÉTAPE 10
Fournissez les paramètres pour chaque affichage de sortie que vous avez sélectionné comme suit :
- Pour Column Append, entrez le nom de la colonne qui sera ajoutée à la table actuellement ouverte, le type de données que la colonne contient et la variable de sortie spécifiée précédemment qui contiendra la liste des valeurs qui rempliront la colonne.
- Pour Table, entrez la variable de sortie spécifiée précédemment qui contiendra la table.
- Pour R Plot, saisissez le format des graphiques que vous souhaitez récupérer depuis R (png ou jpg).
- Pour Fenêtre, saisissez le texte des résultats tel qu'il doit apparaître dans la fenêtre des résultats. Si vous souhaitez que les valeurs des variables d'entrée/sortie soient affichées, entourez les noms de variables avec le symbole caret (^). Saisissez également le nom de la fenêtre que vous souhaitez afficher.
Step 10: Provide Output Display ParametersStep 10: Provide Output Display ParametersÉtape 10 : Fournir les paramètres d'affichage de sortie Vous pouvez maintenant trouver le fichier du complément dans le répertoire que vous avez choisi !

À installer le complément, double-cliquez sur le complément et JMP devrait vous demander si vous souhaitez l'installer. Cliquez sur « Installer ». Il devrait maintenant apparaître dans votre menu Compléments dans JMP.
À courir le complément, ouvrez la table de données sur laquelle vous souhaitez effectuer l’opération (le cas échéant) afin qu’il s’agisse de la table actuelle. Cliquez sur votre complément comme indiqué ci-dessus et la boîte de dialogue du complément devrait s'ouvrir.

Pour cet exemple, les trois les sorties sont une colonne de prédiction, une matrice de confusion et un tracé SVM. Les résultats pour les entrées affichées ci-dessus sont les suivants, la première vue étant le format de sortie de rapport nouvellement ajouté dans la version 2 :
Output view from add-in version 2Output view from add-in version 2 Vue de sortie de la version 2 du complément
Output view from add-in version 1Output view from add-in version 1Vue de sortie de la version 1 du complément
Modification du complément
Pour modifier votre complément, ouvrez le répertoire dans lequel vous avez enregistré votre fichier .jmpaddin. Remplacez l'extension par .zip :
Ouvrez le fichier .txt portant le nom de votre complément :

Ceci est votre fichier de configuration. Si vous souhaitez apporter des modifications à votre complément, telles que le code R ou les noms de variables, vous pouvez directement modifier vos entrées dans ce document, enregistrer le fichier .txt et le fichier .zip, redéfinir l'extension en .jmpaddin, et réinstallez votre complément. Les modifications seront reflétées si vous avez modifié les valeurs correctement.
Veuillez consulter la documentation ci-jointe pour un deuxième exemple (approximation par morceaux d'agrégats de séries chronologiques, code R adapté de ici ) et d'autres remarques. Vous trouverez également ci-joint les deux exemples (SVM, PAA) que j'ai créés avec ce complément.
Quels compléments R avez-vous créés avec ce complément ? Quelles améliorations souhaiteriez-vous voir ? Faites-le moi savoir dans les commentaires ci-dessous !