table de données de sous-ensemble basée sur une autre table de donnéesSalut,
Disons que nous avons une table de données principale et qu'il existe une autre table de données que nous voulons utiliser pour sous-ensembler la table principale + ajouter des conditions au cours de ce processus ;
tableau principal

Un autre tableau de données

Comment parcourir chaque ligne de la colonne Label dans la table principale pour obtenir les lignes correspondant aux lignes du sous-ensemble de tables (L1, L3, L5) et obtenir des lignes lorsque le groupe == K et le nombre == 2
Ainsi, la table de sortie devrait ressembler à

Veuillez fournir la solution avec la boucle for ou tout ce qui existe et n'utilisez pas de liste courte comme list = {K1, K3, K5} car dans mes données réelles, j'ai des milliers de lignes. Comment sélectionner des lignes en fonction de plusieurs critères ?
Tableau de donnéesAutreScriptRe : table de données de sous-ensemble basée sur une autre table de donnéesLa numérisation du manuel ne fonctionne pas... vous devez lire le manuel... il fournit les structures sur lesquelles vous pouvez construireRe : table de données de sous-ensemble basée sur une autre table de donnéesExcellent! Je dois commenter à un moment donné. Le manuel ne suffit pas. Je parcours le manuel et il n'y a pas d'exemple proche de ma question. Avez-vous une meilleure source pour trouver des cas d'utilisation des fonctions ?
Re : table de données de sous-ensemble basée sur une autre table de donnéesVoici un exemple d'une façon de faire ce que vous voulez.
Je vous recommande de prendre le temps de lire la documentation Utilisation de JMP et du guide de script de la bibliothèque de documentation JMP, dans le menu déroulant Aide.Cela ouvrira la fenêtre sur les différentes façons d'utiliser les objets dans JMP et ne se limitera pas à penser que tout doit être codé dans une méthodologie de programmation traditionnelle.
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;