Necesito hacer cuatro cosas para todos los archivos en un directorio:
- Abrir una tabla de datos
- Añadir una columna
- Toma un subconjunto de esa tabla de datos
- Concatenar ese subconjunto en una tabla diferente
Parece tan simple, pero me quedo estancado en el paso 4. Puedo concatenar la tabla de datos original en la tabla diferente, pero no el subconjunto. ¿Cómo consigo jmp para trabajar con este subconjunto?
Cada archivo es lo suficientemente grande como para que necesite tomar el subconjunto antes de la operación de concatenación. La concatenación de todos los archivos originales lleva a jmp fallar. Tengo que hacer esto todas las semanas, así que espero que haya un script para hacer esto.
Esto es lo que tengo.
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);
);
No estoy seguro de qué problema está diciendo exactamente, pero sí me doy cuenta de que está concatenando con la tabla "Resumen" y creando datos nuevos cada vez. Si está intentando acumular las partes en una sola tabla de datos, deberá concatenar esa tabla cada vez. Puede hacerlo con la opción Anexar a la primera tabla (1) en el mensaje Concatenar.
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));