JSL : Itérer dans les colonnesBonjour, j'ai 2 questions (tout nouveau !)
Tout d'abord, j'ai plusieurs colonnes de données similaires et je dois appliquer la même formule à toutes. Par exemple, si je devais trouver la moyenne de chaque colonne, puis-je automatiser cela par une sorte d'itération ?
Deuxièmement, comment enregistrer une opération sous forme de liste et non sous forme de nouvelle colonne ? Par exemple, si j'avais l'opération suivante créant une nouvelle colonne dans mon graphique
dt << New Column( "Example", Numeric, Formula(Col Mean( :Height, :Age ) ) );
(Rechercher essentiellement la taille moyenne pour chaque âge), pourrais-je simplement stocker cette opération sous la forme d'une liste pouvant être utilisée dans une autre opération, plutôt qu'une colonne sur mon graphique ?
Merci!
Re : JSL : Itérer dans les colonnesLe script ci-dessous gère votre premier problème
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
colnames = dt << get column names( numeric,string );
meanlist = {};
For( i = 1, i <= N Items( colnames ), i++,
meanlist[i] = Col Mean( column(dt,colnames[i]) )
);<BR />
Pour le deuxième problème, vous pouvez répondre à ce dont vous avez besoin en créant une colonne de caractères, puis créez vos 2 calculs ou plus, convertissez chacun d'eux en une chaîne de caractères, puis concatinez les valeurs ensemble, pour les placer dans une liste, convertissez le list en une chaîne : Char(MyList)......qui finirait par ressembler à "{45, 34}" ;
Ou enfin, vous pouvez enregistrer la liste en tant qu'expression.
Mais dans la mesure où JMP gère automatiquement les résultats dans les analyses, il n'a actuellement pas cette capacité