Je dois faire quatre choses pour tous les fichiers d'un répertoire:
- Ouvrir une table de données
- Ajouter une colonne
- Prendre un sous-ensemble de cette table de données
- Concaténer ce sous-ensemble sur une autre table
Cela semble si simple, mais je reste bloqué à l'étape 4. Je peux concaténer la table de données d'origine dans la table différente, mais pas le sous-ensemble. Comment faire en sorte que JMP fonctionne avec ce sous-ensemble?
Chaque fichier est suffisamment volumineux pour que je doive prendre le sous-ensemble avant l'opération de concaténation. La concaténation de tous les fichiers originaux entiers provoque le crash de jmp. Je dois le faire toutes les semaines, alors j'espère un script pour le faire.
Voici ce que j'ai.
Directory="C:\testpath\testdir\";
FileNames=Files in Directory (Directory);
Summary=New Table("Summary");
For (iFile=1, iFile<=N Items (FileNames), iFile++,
FileString=File Names[iFile];
File_Path=ConCat(Directory,FileString,"\",FileString,".jmp");
One Day Table=Open(File_Path);
New Column("Count Number",Character,Nominal,Formula(Right(:WaferId,2)));
One Day Table << Select Where((Count Number=="01" | Count Number=="08" | Count Number=="15" | Count Number=="22")& Is Missing(Name("SWR::WaferData::SWRNoLEHI1")));
One Day Table Part=One Day Table << Subset (Selected Rows);
FinalTable = Summary << Concatenate(One Day Table Part,OutputTable("Table C"));
close(One Day Table,No Save);
);
Je ne sais pas exactement ce que vous dites comme problème, mais je remarque que vous concaténez avec le tableau "Résumé" et créez à chaque fois de nouvelles données. Si vous essayez d'accumuler les pièces dans une seule table de données, vous devez concaténer cette table à chaque fois. Vous pouvez le faire avec l'option Ajouter à la première table (1) du message Concaténer.
Summary = New Table( "Summary" );
One Day Table = Open( "$SAMPLE_DATA\Big Class.jmp" );
One Day Table << Select Where( (:Sex == "M") );
One Day Table Part = One Day Table << Subset( Selected Rows );
Summary << Concatenate( One Day Table Part, append to first table(1));
Another Day Table = Open("$SAMPLE_DATA\Fitness.jmp");
Another Day Table << Select Where( (:Sex == "M") );
Another Day Table Part = Another Day Table << Subset( Selected Rows );
Summary << Concatenate( Another Day Table Part, append to first table(1));