Ciao, sono un principiante JSL.Ho bisogno del codice per copiare tutti i valori esistenti in una tabella così come i nomi delle colonne e incollarli in un'altra tabella appena creata.Questo è probabilmente semplicissimo, ma dopo aver navigato nel forum e cercato su Google per un po', non riesco a trovare la risposta esatta.La mia tabella di origine contiene alcune colonne con dati puri e alcune colonne con formule che coinvolgono semplici calcoli tra le colonne di dati.Il mio codice è sotto.Oltre ai valori delle celle e ai nomi delle colonne, sembra che copi anche le formule e non ne ho bisogno.Ho solo bisogno dei valori in quanto ho bisogno di rimuovere determinate colonne dalla nuova tabella e la presenza di relazioni funzionali tra le colonne (le formule) non me lo consente.Grazie in anticipo per il vostro aiuto.Sto usando JMP 14.0
// Seleziona il file e la cartella di origine
dt=Apri("C:\Test.jmp");
Attendere(1);
// Crea una nuova tabella dati
dt1=Eval(dt << getScript)
Ciao jthi, grazie per la tua pronta risposta.Molto utile!
Il modo più semplice è utilizzare il sottoinsieme (questo copierà gli script/variabili della tabella, quindi è necessario eliminarli)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << New Column("Mult", Numeric, Continuous, Formula(:height * :weight));
dt_new = dt << Subset(All rows, Copy formula(0),Selected columns only(0));
E per ottenere lo script, lascia che JMP lo scriva per te (se JMP16 è ancora più semplice con Enhanced Log).
1. Tavolo aperto
2. Vai al menu Tabelle e scegli il sottoinsieme
3. Effettuare delle scelte e premere ok

4. Nella nuova tabella apri lo script della tabella di origine e ottieni lo script per il sottoinsieme
Data Table("Subset of Big Class") << Subset(All rows, Selected columns only(0))
Dal registro avanzato:

Quindi modifica lo script per utilizzare i riferimenti invece di Datatable("tablename") e dovresti avere uno script abbastanza pronto