Hola,
Acabo de detectar 2 errores desagradables en Tablas/Resumen.
Uno de ellos incluso puede usarse para hacer que JMP falle en cualquier PC (!!!)
Error 1) Lea este código y prediga qué hará Jmp:
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Summary(
Local Data Filter( Add Filter( columns( :sex ), Where( :sex == "X" ) ) ),
Group( :sex ),
Mean( :height ),
Link to original data table(0),
output table name( "average o students with sex = \!"X\!"" )
);
En BigClass no hay alumnos con sexo="X". Entonces, esperaba que la lista estuviera vacía:
Filtro: sexo= "X" / no hay "X" en la tabla -> tabla resumen vacía
Desafortunadamente, la lógica en Jmp es sorprendentemente diferente:
Si el filtro de datos no encuentra una coincidencia, el filtro de datos se reinicia y muestra TODOS los datos.
Para paneles, detección de valores atípicos (:alien:) con Jmp Dashboards: ¿cómo? TS-00046650, es "simplemente" molesto que no se aplique la restricción; para el análisis estadístico automático a través de Tablas/Resumen, el problema es más grave: al final, hay un resultado incorrecto; no hay filtro de datos a la izquierda del panel donde el usuario puede detectar y corregir el problema.
Desde Jmp 17, existe esta nueva característica interesante: Eliminar filas excluidas
lamentablemente existe:
Error número 2:
Si tiene Jmp 17 o Jmp 18 EA, intente ejecutar este código dos veces: almacene sus datos, ¡Jmp fallará!
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Summary(
Local Data Filter( Add Filter( columns( :sex ), Where( :sex == "F" ) ) ),
Group( :sex ),
Mean( :height ),
Remove Excluded Groups,
Link to original data table(0)
);
// today no females
dt << Select where( :height < 67 ) << Exclude;
Después de ejecutar el código por primera vez, debido a la restricción del filtro de datos, la tabla de resumen muestra la altura promedio de las entradas femeninas. Luego, la línea al final del código excluye todas las filas con altura <67, entre ellas todas las entradas femeninas.
Ahora, ejecuta el código nuevamente:
Las filas con sex="F" todavía están ahí, simplemente están excluidas . Entonces, en comparación con el error número 1, aquí el filtro de datos no se restablece.
Restringirá el análisis a filas con sexo = "F". Estas filas están excluidas por el filtro de datos de la tabla de datos.
En total, no hay ninguna fila no excluida coincidente. Como consecuencia: Eliminar filas excluidas tiene mucho que hacer y se enoja.
Tan enojado que Jmp se estrella.
Está claro que sin filas coincidentes el usuario obtendrá pocos beneficios del resultado. Pero en un guión largo podría haber algo como:
Promedie la altura de las alumnas de la clase que también coinciden con algunas configuraciones de filtro adicionales que se aplicaron a través de la tabla principal.
Debajo de la línea:
Supongamos que quiero contar las alumnas de una clase y calcular su altura promedio. Usando Jmp/Tables/Summary con un filtro de datos:
- Si no hay alumnas en la clase, Jmp contará a los alumnos varones y promediará sus edades (!!!)
- si hay >=1 alumnas en la clase, pero las filas respectivas fueron excluidas, Jmp fallará (!!!)
[si Eliminar filas excluidas está habilitado]
@hogi escribió:
Para paneles, detección de valores atípicos (:alien:) con Jmp Dashboards: ¿cómo? TS-00046650, es "simplemente" molesto que no se aplique la restricción; para el análisis estadístico automático a través de Tablas/Resumen, el problema es más grave: al final, hay un resultado incorrecto: no hay filtro de datos a la izquierda del panel donde el usuario puede detectar y corregir el problema.
Mismo tema -> misma solución:
Filtro de datos locales: opción: restringir o no restringir a los datos actuales
Hola Mandy, gracias por investigar esto tan rápidamente.
Recibí la pista TS hoy y estaré investigando y publicaré todo lo que encuentre.
Sí, acabo de recibir el número de ticket: TS-00124252
@hogi
Muy interesante.
Reproduje sus hallazgos en JMP 17 y 18.
Supongo que ha enviado este problema a support@jmp.com