Ricodifica i valori dello script per più colonne utilizzando l'array associativo e il cicloSalve, comunità di utenti di JMP,
Molto spesso ho bisogno di ricodificare i valori e mi piace usare un file con le chiavi di mappatura (in allegato, help_med_code.jmp).
Da questi dati di mappatura ho creato l'array associativo e per ricodificare i valori nel mio set di dati (help_data.jmp) ho ricodificato i valori per ogni colonna.
A volte ho molte colonne e sarebbe preferibile usare il ciclo.
Tuttavia, il mio script per loop non funziona (allegato, help2.jsl).
Per favore, aiutaci a usare l'array associativo nel ciclo. Saranno molto apprezzati anche altri suggerimenti per la ricodifica.
Spero di non aver commesso errori di battitura stupidi e di non aver ripetuto la domanda se era già stata data risposta qui.
Migliore a tutti voi,
Valentina
JMP® 16.2.0 (570548)
Microsoft Windows 10 Enterprise a 64 bit (10.0.19044.0)
Automazione e scriptingMiscelazione e pulizia dei datiOggetto: ricodificare i valori dello script per più colonne utilizzando l'array associativo e il cicloCome si costruisce la mappatura per i nomi delle colonne? Le colonne originali sono sempre nello stesso formato? Presumo nel mio script di esempio che lo siano, quindi quelli possono essere ripetuti
Names Default To Here(1);
// this is original datatable
dt_data = Open("help_data.jmp");
// this is mapping file
dt_mapping = Open("help_med_code.jmp");
//The associative array
aa_mapping = Associative Array(:number, :med);
aa_mapping << Set Default Value("MISSING MAPPING INFO");
// build column name mapping
aa_colnames = Associative Array();
For Each({col_name}, dt_data << Get Column Names("Character", "String"),
If(Starts With(col_name, "med_"),
aa_colnames[col_name] = Substitute(col_name, "med_m", "drugname_");
)
);
For Each({{orig_col, new_col}}, aa_colnames,
dt_data << New Column(new_col, Character, Nominal, << Set Each Value(
aa_mapping[Column(dt_data, orig_col)[Row()]]
));
);Oggetto: ricodificare i valori dello script per più colonne utilizzando l'array associativo e il cicloGrazie!
Ho ottenuto i dati insieme alle etichette/dizionario per i dati.
Sono contento che la sceneggiatura funzioni.