nuova colonna: rango unicoCIAO,
Voglio creare una colonna con valori 1,2,3 - N per etichettare valori univoci in un'altra colonna.
Nella community ci sono diversi post simili
Come creare una nuova colonna con numero numerico basato sul raggruppamento univoco della colonna A
Grado Unico
con una varietà di soluzioni.
Ma l'unica soluzione interessante che non ho trovato fino ad ora.
Dovrebbe essere
- dinamico (reagisce alle modifiche nella tabella) -> nessuna tabella/riepilogo, nessuna etichetta da codificare
- indipendente dal tipo di colonna (almeno: Carattere + Numerico) -> nessuna Etichetta da codificare
- funzionale anche per tabelle non ordinate -> nessun ritardo
- veloce -> nessun array associativo
Migliore: una breve funzione come (*)
rank unique(:col1)
o un'opzione di una funzione (**)
rank(:col1, << unique(1))
Ho trovato l'opzione
rank(:col1, << tie(mode))
ma non ho trovato un modalità che produce il numero 1, 2,3... N
Pensavo che si potesse arrivarci usando rango due volte:
New Column( "step1",Formula( Col Rank( :sex, <<TIE></TIE>
Ma step2 conosce alcuni segreti sulla colonna step1 che l'utente non può vedere:

Cosa funziona:
New Column( "Rank[sex]",
Formula(
If(row() == 1,summarize(values= by(:sex)));
Contains( values, :sex )
)
);
Sto ancora cercando (*) o (**) e spero di poterlo trovare nel menu contestuale del tasto destro del mouse sulla colonna Nuova formula. Ma dove?
Combinazione e pulizia dei datiRi: nuova colonna: rango unicoNon esiste una singola funzione Col in grado di eseguire questa attività. Puoi farlo con le funzioni Col, ma molto probabilmente ne richiederà poche e sarà più lento rispetto all'utilizzo di Summarize (o Associative Array). Aggiungi una classificazione densa alle funzioni Ranking Tie e Col Rank
Ri: nuova colonna: rango unicoÈ un peccato che le voci della lista dei desideri - ce ne sono così belle - ma passano inosservate.
Come potevo perdermi questo...
-> Complimenti da parte mia.
Ri: nuova colonna: rango unicoLa ricerca non è la migliore nella comunità JMP, quindi avrei dovuto aggiungere più "parole chiave" al titolo, come la classifica univoca. Questo è un problema che mi trovo ad affrontare di tanto in tanto al lavoro, ma fortunatamente (almeno non ancora...) o la velocità di calcolo non è un problema o non ho bisogno della formula dinamica.
Ri: nuova colonna: rango unicosearch: Grazie per il tuo post su di noi nella community.
Da allora seguo il tuo suggerimento e utilizzo sempre la ricerca Google: ho anche aggiunto un collegamento al mio browser.
In passato, un buon approccio era inviare un post alla community, quindi aprirlo e guardare i suggerimenti dei "post correlati" sulla destra, ma dall'aggiornamento del layout della community non riesco più a trovare questa funzionalità.
Una bella applicazione per Rank unico:
Nel Graph Builder quando inserisco i wafer nella zona di rilascio del Gruppo X e le varianti nella zona di rilascio del Gruppo Y, se non è DOE e ogni wafer ha solo una variante, ottengo una trama molto sparsa con molta area bianca.
Quindi è bello avere il grado 1,2,3 ... per la zona di rilascio del Gruppo X e le informazioni sui wafer solo tramite l'etichetta Hover.
Non è davvero essenziale avere la versione dinamica, ma ho una sensazione migliore se i valori si adattano automaticamente dopo un aggiornamento della tabella, in modo tale da garantire che non ci siano vecchi valori.
Gli array associativi diventano già molto lenti per una lunghezza di dati decente. veramente pericoloso se non salvate i vostri dati...
Ri: nuova colonna: rango unicoHm, sempre lo stesso in Jmp 18:

Seguendo un'idea di @jthi di Add Counter for Unique Cases in Groups :
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Column( "rank_unique (sex) by age",
Formula(
Col Minimum(
Col Rank( If( Row() == Col Min( Row(), :age, :sex ), 1 ), :age ),
:age,
:sex
)
)
)
- solo un valore per il primo di ogni sesso X età
- generare rango
- utilizzare Col Minimum per trasmettere i valori alle altre righe