Comment implémenter un filtre après correspondance avec JSL sans colonnes auxiliaires?Bonjour à tous!
Ouvrez deux fichiers "Pizza Responses" et B.Suivez les deux étapes suivantes:
d1 = Open( "$SAMPLE_DATA/Pizza Responses.jmp" );
d2 = Open( "$SAMPLE_DATA/Pizza Subjects.jmp" );
1. Ajouter les colonnes "Genre" du fichier "Sujets de pizza" correspondent à la colonne 1 de "Réponses de pizza".
2 Sélectionnez la colonne "Sexe" comme "M" et la colonne "Choix" comme "TrimPepperjack".
Comment utiliser JSL pour réaliser un filtrage après mise en correspondance sans ajouter de colonnes auxiliaires à un fichier?
Merci!

Re: Comment implémenter un filtre après correspondance avec JSL sans colonnes auxiliaires? @ lwx228 ,
Voici un moyen assez brutal de le faire
Names Default To Here( 1 );
d1 = Open( "$SAMPLE_DATA/Pizza Responses.jmp" );
d2 = Open( "$SAMPLE_DATA/Pizza Subjects.jmp" );
// Get subject IDs for all male subjects
males = d2 << get rows where( :gender == "M" );
maleSubjects = {};
For( i = 1, i <= N Rows( males ), i++,
Insert Into( maleSubjects, Char( d2:subject[males[i]] ) )
);
theRows = d1 << get rows where(
:Choice == "TrimPepperjack" & Contains( maleSubjects, Char( :Subject ) )
);
dSubset = d1 << subset(
selected columns( 0 ),
Rows( theRows ),
output Table( "text" )
);
Je vais aussi ajouter que je pense que vous devez travailler vous-même sur ces éléments avant de les jeter sur le forum de discussion. Vous avez été très actif sur le forum avec vos questions et les connaissances acquises grâce aux réponses des utilisateurs doivent être intégrées à vos efforts indépendants.
Re: Comment implémenter un filtre après correspondance avec JSL sans colonnes auxiliaires?Merci JIM! Merci de m'aider tout le temps.
Depuis que j'utilise VBA tout le temps, ces problèmes peuvent être facilement résolus avec un dictionnaire.
Mais il ne semble pas exister de méthode similaire pour écrire des données dans une table avec JMP.
J'ai également effectué une recherche dans le fichier d'aide de JMP et je n'ai pas trouvé de méthode similaire, principalement à cause de ma piètre base anglaise.
L’anglais de ces questions c’est que j’utilise un logiciel de traduction pour en faire.Ainsi, beaucoup d’expressions ne sont pas rigoureuses.Pardonnez-moi!
Pour une question comme celle-ci, car ce fichier comporte de nombreuses lignes, je ne souhaite pas ajouter de colonne à la table, mais plutôt l'exécuter en mémoire et le sortir directement.
Merci encore, JIM, et merci encore à tous les experts des discussions pour leur aide!
Re: Comment implémenter un filtre après correspondance avec JSL sans colonnes auxiliaires?Le cycle ligne par ligne est une méthode assez brutale.
De cette façon, s'il n'y a pas beaucoup de cibles à filtrer, cela peut être effectué en trois étapes:
1. Sélectionnez "TrimPepperjack" pour produire un sous-ensemble.
2 Match "M" dans le sous-ensemble.
3 Sélectionnez "M" à nouveau.
C'est beaucoup moins de calcul.
Donc, je peux le faire moi-même.Merci!
Re: Comment implémenter un filtre après correspondance avec JSL sans colonnes auxiliaires?Vous pouvez également envisager d’utiliser une jointure virtuelle, qui associe des tables de données sans les joindre. Cela vous permettrait de coder votre script comme si la colonne existait dans votre table de données, même si ce n'est pas le cas.Re: Comment implémenter un filtre après correspondance avec JSL sans colonnes auxiliaires?Merci Jim!
OK.J'ai trouvé cela dans le fichier d'aide. J'ai besoin d'apprendre.
Cela devrait être plus rapide

Re: Comment implémenter un filtre après correspondance avec JSL sans colonnes auxiliaires?Ça devrait être plus rapide .....