tabella di dati del sottoinsieme basata su un'altra tabella di datiCIAO,
Diciamo che abbiamo la tabella dati principale e c'è un'altra tabella dati che vogliamo usare per creare un sottoinsieme di quella principale + aggiungere alcuni condizionali durante questo processo;
tavolo principale

Un'altra tabella di dati

Come passare attraverso ogni riga della colonna Etichetta nella tabella principale per ottenere le righe abbinate alle righe delle tabelle di sottoinsieme (L1, L3, L5) e ottenere righe quando il gruppo == K e il numero == 2
Quindi la tabella di output dovrebbe assomigliare a

Fornisci la soluzione con il ciclo for o qualsiasi altra cosa sia disponibile e non utilizzare una breve lista come list = {K1, K3, K5} perché nei miei dati reali ho migliaia di righe. Come selezionare le righe in base a più criteri?
Tabella datiAltroScriptingRi: tabella di dati sottoinsieme basata su un'altra tabella di datiLa scansione del manuale non funziona...è necessario leggere il manuale...fornisce le strutture su cui costruireRi: tabella di dati sottoinsieme basata su un'altra tabella di datiEccellente! Devo commentare a un certo punto. Il manuale non è sufficiente. Eseguo la scansione del manuale e non esiste un caso di esempio vicino alla mia domanda. Hai una fonte migliore che possiamo trovare alcuni casi d'uso delle funzioni?
Ri: tabella di dati sottoinsieme basata su un'altra tabella di datiEcco un esempio di un modo di fare quello che vuoi.
Si consiglia di dedicare del tempo alla lettura della documentazione sull'utilizzo di JMP e della Guida allo scripting dalla Libreria della documentazione di JMP, nel menu a discesa della Guida.Si aprirà la finestra sui vari modi di utilizzare gli oggetti all'interno di JMP e di non limitarsi a pensare che ogni cosa debba essere codificata in una metodologia di programmazione tradizionale.
names default to here(1);
dt1=data table("main_table");
dt2=data table("subset_table");
dt2b = dt2 << subset(selected rows(0), columns(:label));
dtFinal = dt1 << Join(
with(dt2b),
Match Flag( 1 ),
By Matching Columns( :Label = :Label ),
Drop multiples( 0, 0 ),
Include Nonmatches( 1, 1 ),
Preserve main table order( 1 ),
merge same name columns( 1 )
);
close( dt2b, nosave );
dtFinal << select where(:match flag == 3 | (:Group == "K" & :Number == 2) );
dtFinal << invert row selection;
dtFinal << delete rows;