Quiero hacer una selección de valores atípicos enumerando a los extraterrestres en mi clase.
Primer intento: Filtro de datos locales
¡Estaba bastante sorprendido con todos los alienígenas en Big Class!
... pero luego noté que el filtro de datos simplemente se ignoró (porque el día 1 no había extraterrestres en la clase).
Esto parece estar relacionado con Filtro de datos: cómo especificar los límites :
Si un valor solo se usa en el filtro de datos pero no en la tabla de datos, se elimina del archivador de datos.
Este comportamiento interfiere con otro comportamiento de Jmp: si se anula la selección del último valor de filtro, todo las filas se seleccionan (en lugar de ninguna).
Entonces, con el comportamiento actual de los filtros de datos, este enfoque no funciona 
A continuación, usé un Dónde() cláusula para restringir el informe de tabulación.
Desafortunadamente, si un día no hay extraterrestres en la clase, la cláusula Where genera un mensaje de error, en lugar de restringir el conjunto de datos a 0 filas:
This Where-clause for data table 'Big Class' resulted in no rows: :alien == 1
Además, la selección de filas para el informe parece ser estática.
Después de que XX cambió a no extranjero, todavía figura en el informe:

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << New Column( "alien", nominal, set each value( 0 ) );
myDashboard = Function( {myTitle,withWhereClause},
New Window( myTitle,
Eval(
Substitute(
Expr(
Tabulate(
Show Control Panel( 0 ),
Add Table(
Row Table( Grouping Columns( :sex, :age, :name ) )
),
,
__selectAliens__
)
),
Expr( __selectAliens__ ),
If( withWhereClause,
Expr( Where( :alien == 1 ) ),
Expr(Local Data Filter( Close Outline( 1 ), Add Filter( columns( :alien ) ), Where( :alien == 1 )) )
)
)
)
)
);
myDashboard("select aliens via Data Filter", 0 ); // 1st approach: Data Filter --> so many alienas ?!?! no, Data filter was ignored
myDashboard("select aliens via Where()", 1 ); // Where CLause + no matching row --> error message instead of a report
dt << add rows( {name = "XX", alien = 1, sex = "M", age = 200} );
wait(2);
myDashboard("select aliens via Where()", 1 ); // Where CLause + matching row --> dashboard is created, but ...
// XX gets human -> Dashboard stays the same :(
dt[41, {"alien"}] = 0;