Nuova colonna: imposta il valore iniziale dai dati dell'elencoCIAO
Lo script leggerà il nome della colonna numerica dal file. Se c'è solo 1 colonna, voglio creare la nuova colonna e assegnare il valore nella colonna con l'intestazione che legge dal file.Nel caso seguente, la nuova colonna dovrebbe avere un valore iniziale = ITH

Io uso sotto lo script ma non assegna il valore iniziale. Non so perché.
ColList2 = Data Table( "raw data" ) << get column names( numeric );
if(n items (ColList2) ==1,
new column("Label",character, nominal,set each value (ColList2));
);
ScriptingOggetto: Nuova colonna: imposta il valore iniziale dai dati dell'elencoCIAO,
Mancava solo un pezzo alla soluzione: è necessario specificare il formato del contenuto per ColList2 quando si utilizza il comando Ottieni nomi colonne (vedi sotto)
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])
);Oggetto: Nuova colonna: imposta il valore iniziale dai dati dell'elencoAh, ho perso il punto, che quando ottieni i nomi delle colonne, li stai restituendo come espressioni, non come stringhe di caratteri.Pertanto, modificare la riga di codice in:
new column("Label",character, nominal,set each value (char(ColList2[1])));Oggetto: Nuova colonna: imposta il valore iniziale dai dati dell'elencoprova così ma non ha funzionato. Di seguito è riportato il messaggio di errore.

Oggetto: Nuova colonna: imposta il valore iniziale dai dati dell'elencoColList2 è un elenco, quindi è necessario indicare quale elemento dell'elenco si desidera utilizzare quando si "imposta ciascun valore".Poiché c'è solo 1 elemento nell'elenco, dovresti specificarlo come
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]));
);