Re: Utilizzo dell'elenco di colonne nelle formuleCiao @jthi ,
Non sono sicuro se questo sia voluto o meno, ma è sicuramente correlato alle parentesi dell'elenco, {} e al numero di elementi nell'elenco. Potrei riprodurre gli stessi problemi che hai descritto.
Penso che la tua soluzione per eseguire l'inserimento in sia la scelta migliore. Il Parse può diventare molto complicato e difficile. Penso che tu abbia una buona soluzione con Inserisci in e meglio attenersi a quella per aggirare il problema della parentesi di elenco.
DS
Re: Utilizzo dell'elenco di colonne nelle formuleAncora una volta, il JMP Discovery Summit Meet the Experts offre! saltato a Scripting per l'automazione e la sala riunioni personalizzata e @EvanMcCorkle aveva una soluzione molto più pulita rispetto al mio inserto in loop e all'analisi di valutazione; S sostituendo la lista intorno a listOfCols con ColSum:
listOfCols = {:height, :age, :sex}; //won't work here
f = Substitute(listOfCols, Expr(list), Expr(ColSum));
Show(f); //f = ColSum(:height, :age, :sex);Non sono sicuro che il modo in cui le funzioni Col Sum() funzionino con l'elenco di colonne, ma questa soluzione è pulita e semplice.
Utilizzo dell'elenco di colonne nelle formuleMi sono imbattuto in un "problema" durante il tentativo di utilizzare direttamente un elenco di colonne restituito dalla finestra di dialogo delle colonne (ad esempio {:sex, :age: name}). Quando provo a utilizzare quell'elenco direttamente nelle formule Col (Col Mean, Col Sum...) con byVars la formula non funzionerà correttamente. L'uso dell'elenco con, ad esempio, la formula Sum() funziona correttamente. È questo comportamento previsto e qualcuno ha modi più puliti per costruire Col Sum dall'elenco di colonne rispetto agli esempi che ho di seguito?
Di seguito è riportato lo script di esempio con le formule Sum() e ColSum(). Ci sono un paio di modi diversi in cui ho provato a costruire le formule ColSum() ma sono riuscito a farle funzionare solo con Insert Into con espressioni ed EvalParse (che cercherò di evitare a causa di problemi con il debug).
Esempio:
Nomi predefiniti qui (1); dt = Open("$SAMPLE_DATA/Big Class.jmp"); dt << Nuova colonna("Somma", Numerico, "Continuo", Formato("Migliore", 12), Formula(Somma(:altezza, :peso))); listOfCols = {:altezza, :peso}; //list funziona qui dt << New Column("SumList", <
Scripting