Come posso creare una nuova tabella evitando duplicati?In JMP Pro 16.0 ho una tabella con tre colonne e più righe. Le colonne sono denominate: ID, Importo e Risultati. I valori ID sono Caratteri mentre i valori Importi e Risultati sono numeri. In alcuni casi l'ID è un codice ID univoco, ad esempio 3333. In alcuni casi lo stesso ID, ad esempio 3334, è duplicato in più righe e ogni riga ha i suoi valori univoci Importo e Risultati.
Vorrei creare una nuova tabella in cui includere i codici ID univoci, inclusi i valori per Importo e Risultati. Tuttavia, se ci sono codici ID duplicati, vorrei includere solo ID, Importo e Risultati con l'ID con il valore più basso di Importo e il valore Risultati.
Apprezzerei molto come dovrei farlo. Sono a livello amatoriale avanzato e so scrivere script JSL.
Cordiali saluti
Lars Enochsson
Professore di Chirurgia
Istituto Karolinska
Stoccolma,
Svezia
Analisi e modellazione dei dati di baseEsplorazione e visualizzazione dei datisistema operativo macOSR: Come faccio a creare una nuova tabella evitando duplicati?Ecco un piccolo script che sembra fare quello che vuoi
Names Default To Here( 1 );
dt = Current Data Table();
dt << select where( :amount == Col Min( :amount, :id ) );
dtFinal = dt << subset(
selected rows( 1 ),
selected columns( 0 ),
output table( "Final" )
);

R: Come faccio a creare una nuova tabella evitando duplicati?Un'alternativa (non necessariamente più semplice ma potrebbe esserlo e non richiede script) è usare Tabulate con ID come riga e usando Minimum Amount nel corpo della tabella. Quindi Make into Data Table e poi join di nuovo alla tabella originale, eliminando i multipli nella tabella with ma inserendo la colonna per Results. In Join Tables, fai corrispondere sia la colonna ID che la colonna Amount.
R: Come faccio a creare una nuova tabella evitando duplicati?Grazie per la risposta rapida. Tuttavia, non ha risolto completamente il problema. Il fatto è che se ho un tavolo come questo
ID Importo Risultati
Giovanni 10 20
Giorgio 5 43
Giorgio 10 24
Giorgio 15 32
Matteo 40 60
Matteo 70 35
Vorrei creare una nuova tabella con l'ID univoco e con l'importo più basso e il numero di Risultati corrispondente. La nuova tabella dovrebbe apparire così
ID Importo Risultati
Giovanni 10 20
Giorgio 5 43
Matteo 40 60
Cordiali saluti
Lars
R: Come faccio a creare una nuova tabella evitando duplicati?Ciao Lars,
In risposta alla tua domanda: sebbene ciò possa essere fatto tramite scripting, non è necessario.
Una formula di colonna può creare un indicatore. Da questo seleziona matching, dove Flag=1. Quindi menu Tables > Subset , selected rows....
Userò il file di dati campione Big Class, con "Age" come ID che ha duplicati. Questo è un valore ordinale, ma la stessa formula funzionerà con i caratteri.
Contrassegneremo l'altezza minima all'interno del gruppo di "età" simile in modo simile a come stai cercando la "quantità" minima per "ID"

Questi passaggi possono essere registrati con Workflow Builder per creare uno script.
R: Come faccio a creare una nuova tabella evitando duplicati?Si prega di consultare la documentazione per il comando Tabelle > Riepilogo . È possibile semplicemente chiedere il valore minimo tramite ID.