Come posso scorrere le colonne per creare una tabella riassuntiva dei mezzi?
La tua domanda è vaga, quindi la mia risposta potrebbe essere allo stesso modo e "perdere il segno".
Poiché hai chiesto informazioni sul looping, presumo che tu stia scrivendo script. È inoltre possibile assegnare in modo interattivo tutte le colonne di dati numerici al ruolo Y dopo aver selezionato Analizza> Distribuzione per ottenere la media di tutte le variabili. È possibile fare clic con il pulsante destro del mouse su una delle tabelle e selezionare Trasforma in tabella dati combinati.
Ecco una soluzione con script:
Names Default to Here( 1 );
dt = Current Data Table();
name = mean = List();
For( col = 1, col <= N Col( dt ), col++,
column = Column( dt, col );
type = column << Get Data Type;
If( type == "Numeric",
Insert Into( name, Eval( Column( dt, col ) << Get Name ) );
Insert Into( mean, Eval( Col Mean( Column( dt, col ) ) ) );
);
);
New Table( "Column Means",
New Column( "Name", "Character", "Nominal", Values( name ) ),
New Column( "Mean", "Numeric", "Continuous", Values( mean ) ),
);
Dovresti dedicare più tempo a spiegare completamente cosa stai cercando di fare e di quale aiuto hai bisogno quando inizi una discussione se ti aspetti di ottenere una buona risposta senza molte iterazioni.
Credo che tutto ciò che devi fare sia usare
Tabelle ==> Sommario
e selezionare tutte le colonne per cui si desidera generare i mezzi, quindi fare clic su OK e verrà prodotta la tabella.
Se è necessario eseguire questa operazione utilizzando JSL, è sufficiente creare un elenco delle colonne per cui si desidera utilizzare i mezzi, quindi utilizzarlo in una chiamata alla piattaforma di riepilogo.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
colList = dt << get column names( string, continuous );
Data Table( "semiconductor capability" ) << Summary(
Mean( Eval( colList ) ),
Freq( "None" ),
Weight( "None" )
);