Ho una tabella con nomi di colonne numeriche e continue variabili. Ho bisogno di ottenere la media di ogni colonna, raggruppata da una colonna diversa. Lo script qui sotto mostra ciò che sto cercando di fare e rende una tabella generica che funziona per questo scopo. Mi sto bloccando sulla riga "Mean (ColNames)" perché non riesco a elaborarlo.
Se sostituisco "Media (ColNames)" con "Mean (: Col2,: Col3)" o "Mean (: Name (" Col2 "),: Name (" Col3 "))" allora funziona ma ovviamente non soddisfa il mio bisogno di essere in grado di utilizzare colonne variabili . Sono vicino o via?
<BR />// Make a table to work with
nr = 20;
nc = 3;
dt = NewTable("Random_Table");
For(c=1, c<=nc, c++,
dt << NewColumn("Col"||Char(c), Numeric, Continuous, Formula(RandomInteger(1, 10)));
);
dt << AddRows(nr);
Column(1) << Data Type(Character);
//Get column names for the numeric continuous columns
ColNames = dt << Get Column Names(Numeric, "Continuous");
dt << Summary(
Group(:Col1),
Mean(ColNames),
statistics column name format( "column" )
);
Put ed Eval () attorno all'elenco delle colonne e funzionerà
names default to here(1);
dt=open("$SAMPLE_DATA\big class.jmp");
ColNames = dt << Get Column Names(Numeric, "Continuous");
dt << Summary(
Group(:sex),
Mean(eval(ColNames)),
statistics column name format( "column" )
);