Valutare la media delle cole con le iterazioniCiao a tutti,
Sto riscontrando problemi nella valutazione di una funzione media. Come puoi vedere qui sotto, la media (: age,: list_col_names [i]] non inserisce la voce nella lista sulla tabella dei dati. Con questa configurazione corrente, quando apro la formula sulla tabella dati ottengo "Col Mean (: age, list_col_names [i])" che non corrisponde a nulla nell'elenco list_col_names.
list_col_names = fdt << getColumnNames( "String" );
For( j = N Items( list_col_names ), j > 0, j--,
If( Left( list_col_names[j], 2 ) != "10",
Remove From( list_col_names, j )
)
);
For( i = 1, i <= N Items( list_col_names ), i++,<BR /> fdt << New Column( list_col_names[i] || "_age", Numeric, Formula( Col Mean( :age, :list_col_names[i] ) ) ) <BR />);
su in una iterazione
Ri: Valutare il valore medio delle colonne con le iterazioniFunziona alla grande. Grazie Vince!
Ri: Valutare il valore medio delle colonne con le iterazioninon puoi fare: list_col_names [i], stai esplicitamente affermando che hai una colonna chiamata "list_col_names" e stai tirando la sua fila.
Prova questo
Names Default to here(1);
fdt = open("$SAMPLE_DATA\Big Class.jmp");
list_col_names = {"sex", "name"};
For( i = 1, i <= N Items( list_col_names ), i++,
//this is just it doesn't keep the variable
//in the table because i will change and then your column name will change
Eval(
EvalExpr(
fdt << New Column( list_col_names[i] || "_age",
Numeric,
Formula( Col Mean( :age,
//replaces the string column name with an actual column
Expr(Column(fdt, list_col_names[i]))
) )
)
)
)
);