Lorsque j'entreprends un nouveau projet de plomberie, j'essaie toujours de suivre mes deux règles de plomberie. Première règle: ne démarrez jamais un projet de plomberie sans bière dans le réfrigérateur; vous serez frustré et aurez besoin de faire une pause pour vous calmer et une bière donnera de bons résultats. Règle n ° 2: Ne démarrez jamais un projet de plomberie (à la maison) dans les deux heures suivant la fermeture de la quincaillerie; vous trouverez toujours que vous avez besoin d'une section de tuyau ou d'un raccord supplémentaire. C’est beaucoup trop pénible d’attendre le lendemain matin pour obtenir la pièce et régler le problème, avant que vous puissiez enfin rétablir le courant.
Je trouve que la programmation en général a beaucoup en commun avec la plomberie. Appliquer des règles similaires aux scripts dans JMP Scripting Language (JSL), je substitue des boissons contenant de la caféine à la bière. Et plutôt que de conduire à la quincaillerie, je visite les index de script.
Si vous écrivez des scripts JSL, sachez que l’objet OSI (Object Scripting Index) contient désormais une syntaxe, des descriptions et des exemples pour chaque message adressé à chaque objet. Il y a actuellement plus de 2 600 messages distincts au total, et se rappeler de la syntaxe pour chacun serait un défi pour quiconque.
Vous trouverez l'OSI dans le menu Aide. Trois domaines sont particulièrement intéressants du point de vue pédagogique: les messages de la table de données, la SAS Les messages d'intégration et les messages de script uniquement pour Fit Model. Je vous encourage à explorer d'autres messages, en particulier dans ces domaines, car j'ai trouvé de nombreux bijoux cachés là-bas.
Tableau de données : Faites défiler la liste jusqu'à la table des données dans le panneau Objets, puis dans le panneau Messages, essayez de faire défiler le message «Désabonnement». Vous y trouverez deux champs de paramètre: action que vous souhaitez déclencher pour vous désabonner. La barre verticale entre les options indique que l'action peut être l'une des quatre options possibles.

Pour l'essayer, cliquez sur «Exécuter un exemple», puis fermez la table de données et examinez le journal. Dans cet exemple, lorsque l'abonnement démarre, JMP commence à écouter les événements se produisant dans la table de données, exactement comme lorsque vous exécutez une analyse ou un graphique. Subscription appelle la fonction d'impression transmise dans l'option On Close et imprime «Closing Data table» dans le journal lorsque vous fermez la table de données. Cependant, l'appel de désabonnement empêche l'appel de fonction en annulant l'abonnement. Si vous supprimez ou commentez l'appel de désabonnement, relancez le script et fermez la table de données, le message «Fermeture de la table de données» apparaît dans le journal.
Intégration SAS : Dans le panneau des objets OSI, faites défiler jusqu'à l'objet Serveur SAS imbriqué sous l'objet d'intégration SAS. Dans le panneau des messages, faites défiler jusqu'à Soumettre. Dans cette entrée, vous trouverez que tous les paramètres sont facultatifs, notés avec.

Si vous avez installé SAS, essayez d’exécuter ce script. L'instruction SAS Connect () exécutera SAS localement et en coulisse. Une fois l’opération terminée, vous verrez deux nouvelles fenêtres de sortie, toutes deux dans JMP. Une fenêtre contient la sortie SAS affichée au format HTML et l'autre pour la table de données avec une nouvelle colonne ajoutée pour le résidu.
Modèle ajusté Remarque: L'entrée d'objet pour Fit Model est un espace réservé pour toutes les personnalités de Fit Model. Dans le panneau Objets, faites défiler jusqu'à Ajuster les moindres carrés sous Ajuster le modèle, puis sélectionnez Enregistrer la table de codage dans le panneau Message. Lors du défilement, vous remarquerez qu'il existe de nombreuses fonctions Get, que beaucoup trouvent utiles lors de la programmation de statistiques personnalisées.

Lorsque vous exécutez l'exemple, outre le tableau de données Drug.jmp, un rapport des moindres carrés standard apparaît et un nouveau tableau de données. Dans la nouvelle table, nous voyons deux colonnes pour la variable Drug. JMP crée n-1 colonnes (et estimations de paramètres), n étant le nombre de niveaux. Le dernier niveau est représenté en codant les deux colonnes -1. Plutôt que de faire de l’algèbre sur les estimations de paramètres dans la sortie pour voir les effets spécifiques du médicament, nous pourrions décider d’utiliser les valeurs moyennes des moindres carrés pour chaque niveau de médicament. Vous pouvez voir les moyennes des moindres carrés en ouvrant la section Détails de l'effet du rapport.
Si vous êtes un peu comme moi, après quelques essais initiaux, vous oublierez que vous n’avez jamais vu cela auparavant et utilisez l’outil OSI chaque fois que vous écrivez un script. Et contrairement à la quincaillerie, l'OSI ne ferme jamais.