通常我不在乎 JMP (JSL) 何时做一些我不希望它做的事情,因为大多数时候它都能正常工作,这是我唯一关心的事情......但今天我想出了一些“有趣”的东西。 如果您使用Where()来过滤您的分析,您最终将得到链接到您的数据表的私有数据表(名称相当奇怪,在本例中为“Big Class,where -sex == -F-”)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
nw = New Window("",
V List Box(
gb1 = dt << Graph Builder(
Size(534, 456),
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Points(X, Y, Legend(3)))
),
gb2 = dt << Graph Builder(
Size(534, 456),
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Points(X, Y, Legend(3))),
Where(:sex == "F")
)
)
);
Show(gb1 << Get Data Table);
Show(gb2 << Get Data Table);
/*
dt_private = gb2 << Get Data Table;
dt_private << New Data View;
*/
所以我对这种行为确实有几个疑问:
- 当我像这样使用Where()来过滤分析时(不仅仅是在图形生成器中),这种情况是否总是发生?
- 这有记录在某处吗?
- 在 JMP 中是否有更多这样的交互,您可以在其中创建一些隐藏的东西,然后您可能会遇到这样的情况(对我来说,这导致我的函数之一出现问题,因为我使用 << 获取数据表来获取数据表的引用,但是出错了,简单的修复是将表引用添加到函数作为参数
- 我应该像这样进行过滤吗?