Nouvelle colonne : définir la valeur initiale à partir des données de la listeSalut
Le script lira le nom de colonne numérique du fichier. S'il n'y a qu'une seule colonne, je souhaite créer la nouvelle colonne et attribuer une valeur dans la colonne avec l'en-tête lisant le fichier.Dans le cas ci-dessous, la nouvelle colonne doit avoir la valeur initiale = ITH

J'utilise le script ci-dessous mais il n'attribue pas la valeur initiale. Pas certain de pourquoi.
ColList2 = Data Table( "raw data" ) << get column names( numeric );
if(n items (ColList2) ==1,
new column("Label",character, nominal,set each value (ColList2));
);
Automatisation et scriptsConception d'expériencesRe : Nouvelle colonne : définir la valeur initiale à partir des données de la listeSalut,
Il manquait juste un élément dans la solution : vous devez spécifier le format du contenu pour ColList2 lorsque vous utilisez la commande Obtenir les noms de colonnes (voir ci-dessous)
Names default to Here (1);
dt = Current Data table ();
ColList2 = dt << get column names( numeric, string );
if(n items (ColList2) ==1,
dt << new column("TEST", character);
dt:TEST << set each value (ColList2 [1])
);Re : Nouvelle colonne : définir la valeur initiale à partir des données de la listeAh, j'ai raté le point : lorsque vous obtenez les noms de colonnes, vous les renvoyez sous forme d'expressions, pas sous forme de chaînes de caractères.Par conséquent, remplacez la ligne de code par :
new column("Label",character, nominal,set each value (char(ColList2[1])));Re : Nouvelle colonne : définir la valeur initiale à partir des données de la listeessayez ça mais ça n'a pas fonctionné. Ci-dessous le message d'erreur.

Re : Nouvelle colonne : définir la valeur initiale à partir des données de la listeColList2 est une liste, vous devez donc indiquer quel élément de la liste vous souhaitez utiliser lorsque vous « définissez chaque valeur ».Puisqu'il n'y a qu'un seul élément dans la liste, vous le spécifierez comme
colList2[1]
ColList2 = Data Table( "raw data" ) << get column names( numeric );
if(n items (ColList2) ==1,
new column("Label",character, nominal,set each value (ColList2[1]));
);