Hola,
Estoy trabajando en un script que permitirá a los usuarios
- Seleccionar columnas para encajar en un modelo
- Identifique la variable principal y especifique el valor del objetivo
- Identifique en qué columna dividir el modelo
- Permita que JMP cree el modelo, optimice la conveniencia de alcanzar el objetivo deseado y luego genere los resultados del modelo.
- Copie los resultados de una tabla de salida conveniente
Tengo secuencias de comandos funcionales que hacen lo que quiero sin permitir la entrada o selección del usuario, pero hacer que la secuencia de comandos sea interactiva ha sido un desafío. Creo que estoy mayormente ahí, pero tengo algunas cosas específicas con las que estoy luchando
- Pregunta 1: en una versión anterior de este script, usé una ventana diferente para cada modelo usando un bucle for con una línea While( x == "y[i]"). Prefiero usar By( :x ) porque es más flexible y ofrece una ventana de salida. Sin embargo, el uso de By( :x ) rompe el script posterior para obtener un objeto programable del informe. ¿Es posible crear un informe diferente para cada subcuadro en la ventana del modelo? ¿O una mejor manera de codificar las líneas 173-181? Construyo esas líneas basándome en estos otros dos hilos: hilo 1 , hilo 2 .
- Pregunta 2: Necesito la opción para poder tener efectos de número variable que se modelen sin tener funciones deseables (más tarde, el script completo también tendrá efectos que se minimizan, pero este script de demostración simplificado se estaba volviendo demasiado complicado). En las líneas 122-126, puedo crear la expresión deseada en ModExpr, pero debido a que es una lista, no funcionó cuando intenté sustituirla directamente en el perfil. Mi solución es tener una cantidad de marcadores de posición mayor que la cantidad de variables que espero modelar y el código parece simplemente ignorar las partes sin sentido si tengo menos de 6 efectos modelados... pero esto parece muy tonto. ¿Hay alguna manera de corregir el código comentado en las líneas 130-134 de modo que la lista se combine en una sola expresión que funcione? Tampoco pude hacer que Concatenation funcionara bien, pero apuesto a que hay algo simple que me perdí.
Aquí hay un script de muestra que usa datos de muestra. El modelo encaja terriblemente, pero eso no es realmente importante para la demostración. Cuando se ejecuta, si borra la selección de "por", las cosas funcionarán bien y generarán resultados. Si queda algo en la sección "por", entonces la línea 174 se romperá.
¡Gracias por cualquier ayuda!
Names Default To Here( 1 );
//sample data for demo
dt = Open( "$SAMPLE_DATA/Football.jmp" );
xvar = {};
yvar = {};
byvar = {};
ytarg = 60;
dtout = {};
//let users select the columns to model
win = New Window( "Model Variable Selection",
<<MODAL></MODAL>