Hola
Estoy intentando crear un subconjunto de todos los datos en la fila cuyo valor en la columna: "es rechazados?" ==Y a una nueva tabla llamada rechazados
Intento varias formas pero ninguna funciona y me aparece el error:
"Split_dt inesperado". Quizás falta un ";" o un ",".
Línea 77 Columna 1: ►Split_dt << Select Where( :is rejects? == "Y" );"
Este código es parte de un script más grande que crea la columna: " ¿Se rechaza?"
Cuando ejecuto todo el script, obtengo el error anterior, pero cuando lo ejecuto por separado, funciona.
¿Qué puedo hacer para solucionarlo?
Opción 1:
rejects = Split_dt << Subset(
Where(:is rejects? == "Y"),
Output Table Name("rejects"),
All Columns
);
Opción 2:
Split_dt << Select Where(:is rejects? == "Y");
rejects = Split_dt << Subset(Output Table Name("rejects"), All Columns);
El guión completo:
Split_dt = Current Data Table();
Split_dt << New Column("is rejects?", character, Formula("N"));
Column(Split_dt, "is rejects?") << Delete Formula;
// Get the number of columns in the data table
numCols = N Cols(Split_dt);
// Iterate over each row in the data table
For Each Row(
// Iterate over each column starting from column 6
For(colIndex = 6, colIndex <= numCols, colIndex++,
// Get the column reference
currentCol = Column(Split_dt, colIndex);
// Check if the value in the current cell is greater than 100 and "is rejects?" is "N"
If(
currentCol[] > 100 & :is rejects? == "N" & Contains(currentCol << Get Name, "BI")
== 0,
// Change the value in the "is rejects?" column to "Y"
:is rejects? = "Y";
// Exit the loop early since we only need one match
Break();
);
)
);
rejects = Split_dt << Subset(
Where(:is rejects? == "Y"),
Output Table Name("rejects"),
All Columns
);
Generalmente uso Rows() cuando creo subconjuntos de filas específicas (también puedes crear subconjuntos de filas seleccionadas, pero generalmente terminas realizando selecciones innecesarias en la tabla cuando haces esto).
Este ejemplo creará un subconjunto de todas las filas que tengan sexo == "F"
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
rows_to_subset = dt << get rows where(:sex == "F");
dt_subset = dt << Subset(Rows(rows_to_subset), Output Table("Subset F"));Gracias por la rápida respuesta.
La solución que sugirió da el mismo error.:(
¿Qué versión de JMP usas? ¿Probaste mi script de ejemplo?
Intentar
rejects = Split_dt << Subset(
Filtered Rows(:is rejects? == "Y"),
Output Table Name("rejects"),
All Columns
);