Eliminar filas basadas en 2 condicionesHola, tengo una tabla de datos "Tabla1", necesito tener una secuencia de comandos JSL que elimine filas basadas en las condiciones de columnas "TesName" y "Cpk".
Primera condición, la columna "TestName" tendrá filas repetidas, por ejemplo, DOE para dosis múltiples (el mismo nombre de prueba) que produce diferentes Cpks; Segunda condición, necesito mantener la fila con el Cpk más bajo y eliminar el resto. La salida de la Tabla 1 es lo que cabría esperar del script
Gracias por adelantado,
Sam

Re: Eliminar filas basadas en 2 condicionesMuchas gracias, funciona perfectamente.
Saludos
Sam
Re: Eliminar filas basadas en 2 condicionesPrueba esto
dt = current data table();
dt << New Column( "MinCpk", numeric, formula(Col Minimum( :Cpk, :TestName )));
dt << select where(:Cpk > :MinCpk);
dt << delete rows;
dt << delete Column("MinCpk");
//___________________________________________________________
//or use this to keep the original table and create a new table with only the rows of interest
dt = Current Data Table();
dt << New Column( "MinCpk", numeric, formula( Col Minimum( :Cpk, :TestName ) ) );
idx = dt << get rows where( :Cpk == :MinCpk );
newtbl = dt << subset( Rows( idx ), All Columns, Output Table Name( "Table2" ) );
newtbl << delete columns( "MinCpk" );Re: Eliminar filas basadas en 2 condicionesLo siento código fue cortado por imagen
dt = tabla de datos actual ();
dt << Resumen (Grupo (: T estName), Min (: Cpk));
Re: Eliminar filas basadas en 2 condicionesObtuve esta secuencia de comandos para acercarme, pero la tabla final todavía falta otros datos de otras columnas, Split, Mean, Sigma, Min, Median, Max
dt = tabla de datos actual ();
dt << Resumen (Grupo (: T
estName), Min (: Cpk));
Re: Eliminar filas basadas en 2 condicionesHola Uday, lo intenté no funcionó, las condiciones de mi caso son dunamic
Gracias
SamRe: Eliminar filas basadas en 2 condiciones @ Sam18 ,
El siguiente ejemplo ilustra cómo puede aplicarlo a su caso.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Show(n Rows(dt));
dt << Select Where(:age == 12 & :height > 60);
dt << Delete Rows;
Show(n Rows(dt));