Re: Ricerca del valore massimo di ogni riga su più colonne e nome della colonna di origineCi sono molti modi per farlo. Di seguito è riportato un esempio che dovrebbe fornirti ciò di cui hai bisogno:
Names Default To Here(1);
dt = Open("$DOWNLOADS/Sample data.jmp");
col_names = (dt << Get Column Names("String"))[2::(N Cols() - 2)];
Column(dt, "Maximum Value") << Set Values(dt[Row(), col_names]);
Column(dt, "Maximum Col Name") << Set Data Type("Character");
Column(dt, "Maximum Col Name") << Set Each Value(
max_idx = Loc(m[Row(), 0], :Maximum value)[1];
col_names[max_idx];
);Re: Ricerca del valore massimo di ogni riga su più colonne e nome della colonna di origine@jthi Grazie. Il tuo codice trova il valore massimo su una colonna a quanto pare e voglio valutare il valore massimo di ogni riga su più colonne. Mi aspetto i seguenti risultati

Re: Ricerca del valore massimo di ogni riga su più colonne e nome della colonna di origineAvevo copiato e incollato uno script molto strano, ora l'ho modificato per correggerne uno
Re: Ricerca del valore massimo di ogni riga su più colonne e nome della colonna di origineEcco un altro modo per risolvere il problema
Names Default To Here( 1 );
dt = Current Data Table();
dt << Select Columns( 2 :: 14 );
col = dt << Get Selected Columns( );
dt << new column("MaxVal", set each value(Max(col)));
dt << new column("MaxVal Column", character, set each value(char(col[loc(matrix(col),:MaxVal)[1]])));
Oggetto: ricerca del valore massimo di ogni riga su più colonne e nome della colonna di originedt << new column("MaxVal Column", character, set each value(char( col[loc(As List(matrix(col)),:MaxVal)[1] ])));Proponi la correzione sopra all'ultima riga almeno per JMP14: la matrice (col) restituisce una matrice e la funzione loc necessita di una lista come primo argomento, quindi la matrice deve essere convertita in una lista con "As list".
Ricerca Valore massimo di ciascuna riga su più colonne e nome della colonna di origineCIAO,
Sto cercando di creare uno script jsl che possa trovare il valore massimo di ogni riga e il nome della colonna corrispondente al valore massimo. Sono riuscito a trovare il valore massimo in tutte le colonne ma ho bisogno di qualche consiglio per trovare il nome della colonna corrispondente al valore massimo
Ecco il codice:
Names Default To Here( 1 );
dt = Current Data Table();
dt << Select Columns( 2 :: 14 );
col = dt << Get Selected Columns( );
val = dt:MaxVal << get values( Format( "Best", 12 ) );
dt:Maximum Value << Set Formula( Max(col) );
nc = (N Items( col ));
For( j = 1, j <= N Items( val ), j++,
xxx = {};
For( i = 1, i <= nc, i++,
If( Contains( char(col[i]), val[j] ),
Insert Into( xxx, char(col[i]) )
)
);
Column( dt, 16 )[j] = xxx;
);
Automazione e scriptingRi: Ricerca del valore massimo di ogni riga su più colonne e del nome della colonna di origineGrazie per questo Jim! L'ho appena usato su 250 colonne. Spero tu stia bene.
Adesso sono molto lontano dal Texas. Carta geografica .