Ottieni il valore da una data colonna sulla prima riga selezionata utilizzando JSLSto semplicemente cercando di ottenere il valore da una data colonna sulla prima riga selezionata, ma in qualche modo questo è sorprendentemente difficile.Ecco cosa ho finora:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Probe.jmp" );
dt << Select Where( :Wafer Number == "16" & :Die X == 3);
selRow = ( dt << get selected rows() )[0];
Row() = selRow;
site = :Site; // returns "1", should return "5" (:Site from row 15)
Mi aspetto che "site" finisca con 5, ma finisce con 1.Cosa mi manca qui?
Si noti inoltre che stavo provando qualcosa di simile a questo su un tavolo con 33 milioni di righe e JMP non ha risposto per diversi minuti.Stavo sperimentando diversi modi per farlo, quindi potrei aver chiesto inavvertitamente di creare prima un elenco di 33 milioni di cose, quindi di prendere il 14 milione di elementi.Spero che qualunque soluzione finisca con la domanda di cui sopra non lo farà.
Automazione e scriptingRe: Ottieni il valore da una data colonna sulla prima riga selezionata usando JSLÈ necessario fare riferimento solo al primo elemento [1] nella matrice Get Rows Where
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Probe.jmp" );
dt << Select Where( :Wafer Number == "16" & :Die X == 3 );
site = :site[(dt << get selected rows())[1]];
// or
dt = Open( "$SAMPLE_DATA/Probe.jmp" );
site = :Site[(dt << get rows where( :Wafer Number == "16" & :Die X == 3 ))[1]];
Re: Ottieni il valore da una data colonna sulla prima riga selezionata usando JSLQuindi i dati nelle tabelle di dati sono fondamentalmente archiviati come un insieme di colonne che sono ciascuna un elenco di voci?
(E sì, sono un programmatore Python quindi mi sono perso la cosa [0] -> [1] ...)
Inoltre, ho setacciato tutte le sezioni della documentazione di JMP che pensavo potessero essere d'aiuto e non sono riuscito a trovare nulla al riguardo, ad esempio la notazione :site[rowNumber].Se qualcuno sa dov'è, mi piacerebbe leggere quella sezione della documentazione.
Grazie Jim!
Re: Ottieni il valore da una data colonna sulla prima riga selezionata usando JSLAbbonamento tabella dati è un buon post nella community e puoi trovare la documentazione da Scripting Guide Guida per script > Tabelle dati > Accedi ai valori dei dati è un buon punto di partenza. Fornisce collegamenti aggiuntivi ad altre pagine con ulteriori informazioni
Re: Ottieni il valore da una data colonna sulla prima riga selezionata usando JSL@txnelson : Questo approccio impiega la maggior parte di un secondo intero per restituire il valore in una tabella di grandi dimensioni (33 milioni di righe).Il tavolo per il resto si comporta bene, quindi penso che questo approccio potrebbe fare qualcosa di pesante sotto la copertura...Ci sono altri approcci che potrei testare?
--> AGGIORNAMENTO: mi sono appena reso conto che è la chiamata "Ottieni righe selezionate ()" che è lenta, non l'accesso ai dati.Curioso, sembra che dovrebbe essere veloce.
Re: Ottieni il valore da una data colonna sulla prima riga selezionata usando JSLIn genere utilizzo Get Rows Where() su Select Where, seguito da Get Selected Rows.A meno che tu non abbia bisogno della visualizzazione visiva delle righe selezionate, ho sempre pensato che fosse più veloce.
Re: Ottieni il valore da una data colonna sulla prima riga selezionata usando JSL@txnelson Il mio vero scopo non era "selezionare dove", ma invece che sto facendo clic su un punto in un grafico del generatore di grafici legato alla tabella dei dati (A) e voglio aggiornare il filtro dati in un grafico del generatore di grafici legato alla tabella dei dati (B).Il primo clic seleziona le righe, quindi il JSL dovrebbe prendere il campo id dalla riga selezionata della prima tabella, quindi incollare quel valore nel filtro dati sul grafico Graph Builder B.
L'ho fatto funzionare oggi (sì!) usando Get Selected Rows (), ma è solo curioso che quella funzione sia relativamente lenta su set di dati di grandi dimensioni.Mi fa pensare che stia cercando in una colonna invisibile tutti gli "1" o qualcosa del genere...
Grazie per l'aiuto!