JMP Scripting Noob: ¿Cómo ingresar una nueva columna basada en el filtrado de datos de dos columnas?Hola a todos,
Me encanta JMP por sus herramientas de creación de gráficos, por lo que estoy empezando a incursionar en la parte de secuencias de comandos. ¿Alguien puede ayudarme con esta solicitud?
Tengo dos cols. Uno para la coordenada X y otro para la coordenada Y. Todo lo que quiero hacer es simplemente crear una nueva columna que enumerará Superior derecha / Superior izquierda / Inferior derecha / Inferior izquierda (LL) según las coordenadas X e Y ...
Así por ejemplo...
si 0 <5 y 0 <5, etiquetar como LL
si 0 <5 y 5 <10, etiquetar como UL
si 5 <10 y 0 <5, etiquetar como LR
si 5 <10 y 5 <10, etiquetar como UR
Estoy tan perdido, cualquier ayuda sería apreciada.:)

Tabla de datosScriptingRe: JMP Scripting Noob: ¿Cómo ingresar una nueva columna basada en el filtrado de datos de dos columnas?Puede hacer esto de manera bastante sencilla con fórmulas en JMP al verificar X e Y por separado y concatenarlos juntos.
Algo como a continuación debería funcionar (no es que si el valor es 0,5 o un valor superior a 10 no se categorizará en absoluto):
If(0 < :y < 5, "L", 5 < :y < 10, "U") || If(0 < :x < 5, "L", 5 < :x < 10, "R")
Re: JMP Scripting Noob: ¿Cómo ingresar una nueva columna basada en el filtrado de datos de dos columnas?Esto se puede hacer fácilmente encontrando qué fila tiene las diferentes combinaciones de valores mínimo y máximo en la tabla de datos.
names default to here( 1 );
dt = New Table( "Sample",
Add Rows( 4 ),
New Column( "x",
Set Values( [1, 1, 6, 6] )
),
New Column( "y",
Set Values( [1, 6, 1, 6] )
)
);
dt << new column("location", character, formula(
:location[(dt << get rows where(:x==col max(:x) & :y==col max(:y)))[1]]="UR";
:location[(dt << get rows where(:x==col max(:x) & :y==col min(:y)))[1]]="LR";
:location[(dt << get rows where(:x==col min(:x) & :y==col max(:y)))[1]]="UL";
:location[(dt << get rows where(:x==col min(:x) & :y==col min(:y)))[1]]="LR";
));
