Je voudrais étiqueter mes graphiques avec les valeurs et les noms de colonne pour ce point (comme dans une boîte à moustaches). Actuellement, je le fais dans Excel en concaténant le nom de la colonne avec la valeur dans les cellules. Cependant, si je peux le faire dans JMP, cela me ferait gagner beaucoup de temps.
Par exemple, je peux avoir des colonnes
A B C
1 2 100
1 2 200
2 5 300
Je voudrais créer une nouvelle colonne qui décrit les informations dans les autres colonnes :
A = 1 : B = 2 : C = 100
A = 1 : B = 2 : C = 200
A = 2 : B = 5 : C = 300
Jusqu'à présent, j'ai pu créer une liste avec les noms de colonnes, mais je ne parviens pas à comprendre comment itérer et concaténer les autres valeurs.
cdt = table de données actuelle();
NomsCol = {} ;
ThisLabel = {} ;
ColNames = cdt << Get Column Names( string );
pour(i=3;i<=5;i++)
concat(ThisLabel,ColNames[i]);
// plus de travail est nécessaire pour obtenir les valeurs de la table
Merci d'avance
Voici une façon de faire ce que vous voulez.Mon exemple montre une méthode codée en dur pour résoudre le problème, ainsi qu'une méthode plus générique

Names Default To Here( 1 );
// Script to create the required column when the names of the columns are known
dt = New Table( "Example 1",
New Column( "A", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1, 1, 2] ) ),
New Column( "B", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [2, 2, 5] ) ),
New Column( "C", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [100, 200, 300] ) ),
New Column( "D", Character, Nominal, Formula( "A = " || Char( :A ) || ": B = " || Char( :B ) || ": C = " || Char( :C ) ) )
);
// Example where script examines the data table and from it, generates the new column
dt2 = New Table( "Example 2",
New Column( "A", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1, 1, 2] ) ),
New Column( "B", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [2, 2, 5] ) ),
New Column( "C", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [100, 200, 300] ) )
);
colNames = dt2 << get column names( string );
// Build the formula in a string variable
theCMD = "dt2 << New Column( \!"D\!", character, Nominal, formula(";
For Each( {col, index}, colNames,
If( index == 1,
theCMD = theCMD || "\!" " || col,
theCMD = theCMD || "\!" : " || col
);
theCMD = theCMD || " = \!" || Char( :" || col || ") || ";
);
theCMD = theCMD || "));";
Eval( Parse( theCMD ) );Si vous n'avez pas vraiment besoin des noms de colonne, un moyen plus rapide consiste à sélectionner vos 3 colonnes, puis faites un clic droit sur l'un des en-têtes de colonne et sélectionnez "Nouvelle colonne de formule -> Caractère -> Concaténer avec une virgule".
Ou si vous avez vraiment besoin des noms, vous pouvez cliquer avec le bouton droit sur le nouvel en-tête de colonne et sélectionner "Formule..." et modifier manuellement la formule pour inclure les noms d'en-tête de colonne.C'est plus lent mais ne nécessite pas l'étape JSL.
Notez que si toutes vos colonnes sont numériques, vous devrez peut-être ajouter une colonne temporaire qui est une colonne de caractères pour que l'option "Caractère" s'affiche dans la liste "Nouvelle colonne de formule".Nous espérons que cela sera simplifié dans une future version : https://community.jmp.com/t5/JMP-Wish-List/Enable-string-concatenation-in-quot-New-Formula-Column-quot-gt/idc-p/582366#M3504