Générer des colonnes avec une boucle forBonjour, j'essaie de générer plusieurs colonnes avec la ligne de script JSL suivante mais lors de l'exécution du script la table de données est vide :
For(i=0,i<3,i++,New Column( "A", Numeric, Continuous, Format( "Best", 10 ), Set Values( [1, 2, 3, .] )))
Comment peut-il être réparé?
Re : Générer des colonnes avec une boucle forEncore une fois, créez d'abord le tableau, puis ajoutez les colonnes.Voici un code qui fait ce que vous voulez (je pense):
Names default to here( 1 );
//Make the data table
dt = New Table( "Tokens",
Add Rows( 3 ),
New Column( "Visual_ID", Character, Nominal, Set Values( {"88", "89", "94"} ) ),
New Column( "FF", Character, Nominal, Set Values( {"Y83", "YA8", "654"} ) ),
New Column( "Bipping",
Character,
Nominal,
Set Selected,
Set Values(
{"19|19|19|16|14|16|19|18|18|21|17|20|20|19|19|20|17|18|18",
"19|19|19|16|14|16|19|18|18|21|17|20|20|19|19|20|18|18|18",
"19|18|18|18|17|18|16|18|18|19|21|19|19|18|18|17|16|16|17"}
)
)
);
//Then add columns to it.
For( ii = 1, ii<19, ii++,
dt << New Column ("My_Column_" || Char(ii),
Character,
Nominal,
Formula(
Word( ii, As Column( Column( "Bipping" ) ), "|" )
)
)
);Re : Générer des colonnes avec une boucle forPeux-tu regarder ici s'il te plait : https://community.jmp.com/t5/Discussions/Loop-is-not-working/mp/77361#M36165
Dans le lien ci-dessus, j'essaie de faire quelque chose de similaire mais cela ne fonctionne pas
Re : Générer des colonnes avec une boucle forLa syntaxe semble correcte, donc je soupçonne que le problème vient du contexte dans lequel vous l'utilisez.Pour que cela fonctionne, créez d'abord une table, puis ajoutez de nouvelles colonnes.Pour vous assurer que les colonnes sont créées dans la bonne table, faites une référence à cette table et "envoyez-lui" le message Nouvelle colonne, comme indiqué ci-dessous :
Names default to here( 1 );
//Open a blank table and save a reference to it
dt = New Table( "New Table", Add Rows( 0 ) );
//Add columns to the table
For( i=0, i<3, i++,
dt << New Column( "A", Numeric, Continuous, Format( "Best", 10 ), Set Values( [1, 2, 3, .] ))
);