Re: La ragazza più alta della Big Class è 66 pollici, ma chi è?Se stai cercando tutte le colonne (per ottenere tutte le informazioni disponibili) per il valore massimo per gruppo, puoi ottenerlo in una nuova tabella come tale:
Names Default To Here( 1 );
dt = Open( "$sample_data\big class.jmp" );
dt << select where ( :height == Col Max( :height, :sex))
dt1 = dt << Subset( Selected Rows( 1 ), Selected columns only( 0 ) );
dt << clear select();
Re: La ragazza più alta della Big Class è 66 pollici, ma chi è?Sono passati letteralmente anni, ma ho trovato un modo per farlo senza codice e con Big Class o il mio vero set di dati. Uso "Fit Y by X" per inserire l'altezza in Y, il sesso in X, quindi inserire un normale quantile plot su di esso. Fare clic e trascinare nel grafico del quantile per selezionare i punti dati che si trovano nel quantile più alto indipendentemente da X. (Questo è banale con solo due sessi, ma i dati effettivi con cui stavo lavorando avevano circa 7 valori X discreti con valori Y molto diversi.) Quindi torno alla tabella dei dati con solo il più alto selezionato e nella casella Righe, a destra fare clic su selezionato e scegliere "Visualizzazione dati". Fa apparire una tabella di dati con solo i valori quantili più alti di ogni X con tutte le colonne conservate. Non è la soluzione più elegante, ma ce l'ho!

Re: La ragazza più alta della Big Class è 66 pollici, ma chi è?Ecco un'espansione del codice per gestire sia i maschi che le femmine
Names Default To Here( 1 );
dt = Open( "$sample_data\big class.jmp" );
Show(
:name[((dt << get rows where( :sex == "F" & :height == Col Max( If( :sex == "F", :height, . ) ) ))[1])],
:name[((dt << get rows where( :sex == "M" & :height == Col Max( If( :sex == "M", :height, . ) ) ))[1])]
);
La funzione Show() scrive i risultati nel log
:name[(dt << get rows where(:sex == "F" & :height == Col Max(If(:sex == "F", :height, .))))[1]] = "JACLYN";
:name[(dt << get rows where(:sex == "M" & :height == Col Max(If(:sex == "M", :height, .))))[1]] = "LAWRENCE";
La formula restituisce la riga in cui si trova l'altezza massima per il maschio o la femmina, quindi tutti i valori di colonna per quella riga sono disponibili per la query.Questa query può far emergere quasi la visualizzazione o l'azione di cui hai bisogno.Ho scelto di scriverlo semplicemente nel registro, per illustrare che la query restituisce la risposta corretta.
Re: La ragazza più alta della Big Class è 66 pollici, ma chi è?Grazie per la risposta rapida!
Due cose:
In primo luogo, tutto ciò che sta facendo per me è aprire il file. 
In secondo luogo, cosa succede se voglio conoscere il ragazzo più alto allo stesso tempo? Abbiamo diverse "classi" e dobbiamo conoscere "la ragazza e il ragazzo più alti" in ciascuna.Re: La ragazza più alta della Big Class è 66 pollici, ma chi è?Names Default To Here( 1 );
dt = Open( "$sample_data\big class.jmp" );
Show( :name[((dt << get rows where( :sex == "F" & :height == Col Max( If( :sex == "F", :height, . ) ) ))[1])] );
La ragazza più alta della Big Class è di 66 pollici, ma chi è lei?Userò i dati di Big Class come esempio, ma il mio set di dati è di circa un ordine di grandezza più grande e il set di dati del mio collega è ancora più grande.
Esistono diversi modi per scoprire l'altezza massima delle ragazze rispetto ai ragazzi nel set di dati di Big Class, ma come posso mantenere la colonna del nome allegata? Posso creare una tabella utilizzando Tabulate, ma non posso aggiungere una colonna del nome perché elenca solo tutti i nomi. Potrei fare un grafico a dispersione e scegliere il più alto e scriverlo, ma il nostro vero set di dati è troppo grande per quello. Posso quasi ottenerlo usando il generatore SQLQuery, se non altro se mi permettesse di deselezionare "Raggruppa per/Nome", ma così com'è ottengo esattamente quello che ho ottenuto da Tabulate.
Qualsiasi metodo (oltre al grafico!) sarebbe utile!
Grazie in anticipo.
Accesso ai dati