使用 JMP > 公式编辑器 > 对公式中的表达式排序 > 按优先顺序生成公式
发布日期: 08/07/2020

按优先顺序生成公式

生成公式时最好以充当参数的任意表达式开头。这是因为函数具有较高的优先级,并且始终与相应的参数组合在一起。同时还建议尽量遵循优先级从高到低的顺序来创建表达式。若需要圆括号,务必在输入要括起来的表达式之前先输入左圆括号。

例如,假定有一个包含 ABC 这三列的数据表,请使用以下步骤编写表达式 A(B + C)。请注意,该表达式不同于 A x B + C,后者计算为 (A x B) + C

要输入表达式,请执行以下步骤:

1. 在“列”列表中点击列 A

2. 点击“公式编辑器”小键盘中的乘号按钮

3. 输入左圆括号。

4. 在“列”列表中点击列 B

5. 点击“公式编辑器”小键盘中的加号按钮

6. 在“列”列表中点击列 C

由于优先顺序决定每个函数影响的参数,所以它也会影响表达式的分组。选择公式中的函数,检查优先顺序规则是如何应用的。

构建公式以提高计算效率

通常,没有必要在构建公式时考虑高效计算。无论公式结构如何,多数公式的计算都几乎是在瞬间完成的。这是因为在计算列值时,统计函数和常数表达式只计算一次。

不过,在创建条件表达式时,请记住 Match 与等效的条件函数 If 相比,计算速度更快,且占用的内存空间要少。(请注意,Match 忽略尾随空格,但 If 不忽略。)

例如,使用 Big Class.jmp,您可以根据儿童的年龄预测其身高,如Match 条件语句比 If 函数的计算速度更快 所示。58.125 英寸是基准身高,在此基础上根据年龄变量的值来增加数量。

Match 条件语句比 If 函数的计算速度更快 

“Match”条件语句比 If 函数的计算速度更快,这是因为年龄变量对数据表中的每一行仅计算一次。If 条件必须在每个 If 子句中为每行都计算年龄变量,直到子句计算结果为真。

需要更多信息?有问题?从 JMP 用户社区得到解答 (community.jmp.com).