Oggetto: trasporre colonne di dati non specificiQuando conosci i nomi delle colonne che desideri trasporre, puoi usarle in Transpose(columns()) usando eval
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
cols_to_transpose = {"height", "weight"};
dt_transposed = dt << Transpose(
columns(Eval(cols_to_transpose)),
Label column name("name"),
Output Table("Transpose of Big Class")
);Oggetto: trasporre colonne di dati non specificiEcco un esempio di script Transpose che esamina i dati dalla tabella dati e genera una tabella dati trasposta basata sui dati;
Names Default To Here( 1 );
theTranspose = Expr(
dt = Current Data Table();
// Get the first character column to use as the Label
theLabel = (dt << get column names( string, character ))[1];
// Get the numeric columns. All numeric columns will be transposed
theTransColumns = dt << get column names( string, numeric );
// Transpose the data
dt << Transpose( columns( theTransColumns ), Label( As Column( theLabel ) ) );
);
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "$SAMPLE_DATA/Big Class.jmp" );
theTranspose;
// Open Data Table: Blood Pressure.jmp
// → Data Table( "Blood Pressure" )
Open( "$SAMPLE_DATA/Cities.jmp" );
theTranspose;
Sono sicuro che questo non risolve il tuo problema specifico, tuttavia, non sapendo quali regole su come vuoi trasporre non sono state specificate, ho impostato le regole in modo che tutte le colonne numeriche trovate vengano trasposte e che la prima colonna di caratteri trovata conterrebbe i nuovi nomi di colonna.
Trasporre colonne di dati non specificheCiao a tutti,
Sto creando uno script in jsl ma ho un problema nella trasposizione della tabella poiché è necessario specificare le colonne necessarie. Tuttavia, nel mio caso, le colonne dipendono dai dati, quindi cambiano.
Come posso creare uno script jsl in cui posso trasporre colonne di dati non specifiche?
Automazione e scripting