Automatización de siguiente nivel mediante secuencias de comandos JSLEste seminario web está disponible en inglés, a las 2:00 p. m., hora del este de EE. UU.
Los flujos de trabajo de JMP le permiten capturar, reproducir y compartir su trabajo de datos de apuntar y hacer clic. Aprenda a convertir flujos de trabajo de un solo uso en scripts fáciles de usar que funcionen con diferentes usuarios y fuentes de datos. La sesión está diseñada para usuarios de JMP que tienen experiencia en la creación de un flujo de trabajo JMP. Vea una demostración concisa de 30 minutos seguida de 15 a 30 minutos de debate sobre temas y preguntas y respuestas.
Este seminario web cubre: ventanas modales simples para la entrada del usuario y sintaxis JSL relacionada.
Automatización y secuencias de comandosInglésDominar JMPRe: Automatización de nivel superior mediante scripts JSLDe Anderson Mayfield @abmayfield 31-05-2023 13:41
Gracias a todos por organizar esto. Tengo una pregunta adicional sobre "generalizar", y tiene más que ver con mi falta de habilidad para crear scripts. Normalmente, en mi flujo de trabajo, necesito "seleccionar todas las columnas" y luego hacer algo, ya sea resumir, agrupar, explorar valores faltantes, etc. Sin embargo, tengo miles de columnas y tendrán nombres diferentes en cada nueva tabla de datos, por lo que no puedo simplemente reemplazar 5000 columnas cuando me indica que no puede encontrar una columna en particular (llevaría horas). Me pregunto si puedo agrupar las columnas PRIMERO y luego llevar a cabo los pasos restantes del flujo de trabajo en el grupo. Podría darle al grupo un nombre genérico.
La alternativa sería intentar seleccionar columnas por una propiedad en su nombre, como en el script que se muestra a continuación. ¿Hay alguna manera de programar el script para que el siguiente paso del flujo de trabajo incluya las columnas SELECCIONADAS generadas por este script? Por ejemplo, si quisiera transponer todas las columnas con "the" en el nombre, ¿se podría incrustar este script en un flujo de trabajo? Estoy tratando de pensar en cómo evitar tener que recodificar los nombres de las columnas en cada archivo, ¡aunque esa es otra opción!
Me doy cuenta de que Workflow Builder probablemente funciona mejor cuando tienes que procesar docenas de tablas con formato idéntico, pero estoy tratando de averiguar si puedo lograr que coopere cuando cada tabla difiere ligeramente.
names default to here(1);
dt=current data table();
colNames = dt << get column names(string);
for each({Name}, colNames,
if(contains(Name,"nox"),
for each row(
column(name)[row()] = ???????????; // your formula here
)
);
);
Re: Automatización de nivel superior mediante scripts JSLDe @Jordan_Hiller 06-03-2023 06:49 p.m.
Si entiendo bien tu pregunta, @abmayfield , estás preguntando si un flujo de trabajo JMP17 puede admitir una gran cantidad de nombres de columnas cambiantes. Diré que sí, es posible, pero no sin insertar algún JSL personalizado en el flujo de trabajo.
Un buen enfoque es hacer que su flujo de trabajo/script actúe sobre las columnas que el usuario seleccionó. antes ejecutando el flujo de trabajo.
A continuación se muestra un ejemplo que utiliza el conjunto de datos de muestra de presión arterial.
Names Default To Here( 1 );
//Custom JSL: Get the user-selected columns, save them into list CNames
CNames = Current Data Table() << Get Selected Columns;
//Slightly modified workflow step: replace hard-coded columns with list CNames
Data Table( "Blood Pressure" ) << Transpose(
columns( CNames ),
By( :Dose ),
Label( :Subject ),
Output Table( "tdata" )
);
Independientemente de cómo abordes el problema, la solución probablemente consistirá en listas JSL. ¡Aprender un poco sobre listas puede darte nuevos superpoderes de codificación!
Re: Automatización de nivel superior mediante scripts JSLPara @hogi, que preguntó : ¿Podrías hacer clic en Grabar en Workflow Builder y luego ejecutar el script? ¿WFB capturaría los pasos del script?
Sí, los flujos de trabajo de JMP 18 capturan scripts que se ejecutan mientras el flujo de trabajo se graba.
Re: Automatización de nivel superior mediante scripts JSLHola @gail_massari , esta es una gran mejora. Acelera la forma en que se puede agregar código generado por el usuario a los flujos de trabajo. ¡Gracias por implementarla!
Espero que el siguiente paso: Workflow Builder + AddIns llegue pronto:)
Re: Automatización de nivel superior mediante scripts JSLGracias @hogi Veremos cómo avanza la solicitud de generador de flujo de trabajo y complementos para JMP 19.