发布日期: 11/15/2021

行函数

通过将行函数添加到公式,您可以引用特定行或特定行中的单元格。您还可以基于等差序列插入值。有关语法的详细信息,请参见《Scripting Guide》中的Row Functions

Col Stored Value

返回未应用列属性的列值。若未指定行,则使用当前行。

假定将“缺失值代码”列属性分配给 x1 列,将“999”视为缺失值。另一列包含计算均值的公式。要使用值“999”而不是缺失值计算均值,请在公式中使用 Col Stored Value:

Mean( Col Stored Value( :x1 ), :x2, :x3 )

Count

创建从 from 值开始到 to 值结束的值的列表。steps 数指定列表中 from to 值之间(包括端点)的值数。由 count 函数的前三个参数确定的每个值连续出现使用 times 参数指定的次数。达到 to 值时,Countfrom 值重新开始。

您还可以使用键盘上的插入按钮 Image shown here 添加 times 参数。该参数默认为 1,但是按您指定的次数重复计数过程,如图 A.2 中数据表的 Count4 列所示。要将任意参数添加到 Count 函数,请突出显示位于您要输入参数前面的参数。键入一个逗号或使用“公式编辑器”小键盘上的插入按钮 Image shown here

下面数据表中的各列从以下公式得到:

Count (1, 9, 2) 得到 Count 1

Count (1, 9, 3) 得到 Count 2

Count (1, 9, 9) 得到 Count 3

Count (1, 9, 3, 3) 得到 Count 4

图 A.2 Count 函数的示例 

Image shown here

Count 函数对生成一列网格值很有用。例如,以下公式创建一个 NRow() 增量的正方形网格。NRow() 是给出数据表中总行数的 Row 函数。NRow() 还创建范围从 –5 到 5 的轴:

Count(–5, 5, Root( NRow() ) );
Count(–5, 5, Root( NRow() ), Root( NRow() ) );

Dif

返回当前行中第一个参数的值与当前行减去第二个参数所定义的行中值的差值。默认 Dif 为 1,您可以将其更改为任意数字。请注意,Dif(X, n) 所得的结果与 XRow()–XRow()-nXRow()–Lag(X, n) 所得的结果相同。

Dim

返回由当前数据表、指定数据表或矩阵的维度构成的行向量。维度是行数和列数并以该顺序列出。

Lag

返回当前行减去第二个参数所定义的行中第一个参数的值。默认 Lag 为 1,您可以将其更改为任意数字。为标识行号小于 1 的任意 Lag 返回的值为缺失。请注意,Lag(X, n) 所得的结果与下标表示法 XRow( )–n 所得的结果相同。

NRow

返回活动数据表中的总行数。

Row

针对该行对表达式求值时返回当前行号。可以在任何表达式中使用 Row(),包括列名下标。除非特别指定,否则列名的默认下标为 Row()

Subscript

使您可以使用非当前行的行中的列值。从列表中选择 Subscript 后,将数值表达式输入下标参数。针对不存在的行号求值的下标将生成缺失值。无下标的列名指代当前行。要删除某个下标,请选择该下标并删除它。然后删除缺失框。

公式 CountRow() – CountRow()–1 使用下标计算 Count 列中每对值之间的差值,其中 Row() 是下面所述的行号。该结果与 Dif() 函数给出的结果相同。Row() 为 1 时,计算结果为缺失值。

下面的公式计算名为 Fib 的列,该列包含 Fibonacci 序列的项(每个值是计算列中的前面两个值之和)。

Image shown here

它显示如何使用下标来执行递归计算。递归公式包含计算列的名称,已加下标以便它只引用以前求值的行(第 1 行到第 (i–1) 行)。所示的 Fibonacci 序列的计算包含条件表达式和比较。请参见条件函数比较函数这两节。

Sequence

生成数据表中各行的数字等差序列,其中开始值、结束限值和增量指定为参数。

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