Pratiquement toutes les plates-formes de JMP incluent un rôle d'analyse facultatif appelé rôle BY. Vous pouvez l'utiliser lorsque vous souhaitez obtenir des analyses ou des graphiques distincts pour chaque niveau ou groupe d'une colonne. Par exemple, supposons que vous travaillez avec la table de données Big Class et que vous souhaitez un ajustement bivarié distinct du poids par taille pour chacun des différents groupes d'âge. Lorsque vous mettez l'âge dans le rôle BY, le lancement produit une fenêtre pour une collection de plates-formes, une plate-forme pour chaque valeur unique d'âge. Toutes les plates-formes individuelles - les ajustements bivariés, dans ce cas - apparaissent dans la même fenêtre. Lorsque vous utilisez une variable BY, une liste de références d'objets est renvoyée, une pour chaque plate-forme dans la fenêtre. Dans cet exemple, il y a six niveaux d'âge, donc ce qui est renvoyé est une liste de six objets bivariés, et ces références sont stockées dans la variable bivGroup. Vous pouvez envoyer un message à toutes les plateformes en envoyant le message à la liste stockée dans bivGroup, qui distribue ensuite le message à chaque plateforme. Ou, vous pouvez envoyer un message à une seule plate-forme, ou à un sous-ensemble spécifique de plates-formes, en utilisant des indices.