Ciclo per impostare una formula di normalizzazione per più colonneCiao comunità,
Sto cercando di scrivere uno script JSL per impostare una formula di normalizzazione con riferimento dinamico alle colonne.
What's wrong here?
"Mean(M4_pop)" & "Std Dev(M4_pop)" are fix columns that are to be used for the normalization.
dt = Current Data Table();
numCols = dt << Get Column Names( Numeric, "String" );
For( i = 1, i <= N Items( numCols ), i++,
colName = numCols[i];
normColName = colName || "_norm";
dt << New Column(
normColName,
Numeric,
Continuous,
Formula( (colName- :"Mean(M4_pop)"n) / :"Std Dev(M4_pop)"n)
);
);
Automazione e scriptingRe: Ciclo per impostare una formula di normalizzazione per più colonneDovrai valutare colName nella formula
Inserisci un'espressione in un'altra utilizzando Eval Insert, Eval Expr, Parse e Substitute
Re: Ciclo per impostare una formula di normalizzazione per più colonneCiao David,
potrebbero esserci soluzioni più carine, ma questo è un modo per far funzionare le cose:
dt = Current Data Table();
numCols = dt << Get Column Names( Numeric, "String" );
For( i = 1, i <= N Items( numCols ), i++,
colName = numCols[i];
mean = "Mean(M4_pop)";
std = "Std Dev(M4_pop)";
normColName = colName || "_norm";
dt << New Column(
normColName,
Numeric,
Continuous,
Formula( (as column(colName)- as column (mean)) / as column(Std))
);
);
Saluti,
Giona
Re: Ciclo per impostare una formula di normalizzazione per più colonneCiao Jonas,
Grazie per la tua risposta. Piccoli cambiamenti che hanno portato al successo:)