Hola,
Soy nuevo en las secuencias de comandos JMP y he estado intentando escribir una secuencia de comandos para un proceso específico con una tabla de datos con la que trabajar. Para ayudar a explicar lo que quiero, aquí hay una tabla de muestra cruda.

Lo que quiero hacer es escribir un script que verifique de forma iterativa cada fila en la columna "Nombre del paso" para detectar el valor "Dormir". Cuando llegue a una fila con "Sueño", verificará el valor correspondiente en la columna "Velocidad". Luego, quiero que el script verifique todas las filas anteriores que comparten los mismos valores en la columna "Velocidad". Si bien comparte el mismo valor en la columna "Velocidad", luego verificará los valores existentes en la columna "Material". Si existe un valor en "Material", tomará ese valor y el valor correspondiente en "Velocidad" y los generará en una nueva tabla, como esta:

Tengo la idea de que esto requeriría un bucle For extenso, pero no sé cómo abordarlo. Agradecería mucho cualquier sugerencia sobre cómo escribir este script. Gracias
Basándose únicamente en los datos de su ejemplo, ¿sería suficiente eliminar todas las filas con material faltante y establecer todos los valores del nombre del paso en suspensión?
Creo que sí, debería ser suficiente simplemente eliminar las filas a las que les falta material mientras se configuran los valores restantes del nombre del paso en suspensión. ¿Cómo abordaría escribir un guión para eso?
Esto también se puede hacer de forma interactiva desde JMP, pero para mí es más rápido escribirlo como un script, así que aquí está. Tenga en cuenta que tiene una tabla un poco diferente a la suya (diferentes nombres de columnas y valores).
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(10),
Compress File When Saved(1),
New Column("Step", Character, "Nominal", Set Values({"W", "E", "P", "F", "S", "C", "W", "P", "S", "F"})),
New Column("S", Character, "Nominal", Set Values({"F", "F", "F", "F", "F", "S", "S", "S", "S", "S"})),
New Column("M", Character, "Nominal", Set Values({"", "F", "", "P", "", "", "S", "G", "", ""}))
);
wait(1); // demo purposes
dt << Select Where(Is Missing(:M)) << Delete Rows; // << Get Rows Where() / << Where() are generally faster than select where
wait(1); // demo purposes
Column(dt, "Step") << Set Each Value("S");Modifiqué este script para adaptarlo a mi uso en mi tabla de datos y se ve bien, ¡muchas gracias!