16.4.2.6 矩阵秩排序函数
GRADE 和 RANK 函数都接受一个矩阵 M 并返回具有相同维数的矩阵 r。r 中每个元素的取值范围在 1 到 M 中元素个数 n 之间(含)。当 M 中所有元素都有唯一值时,这两个函数产生相同的结果:M 中最小的元素对应 r 中的值 1,次小的对应 2,依此类推,直到最大的对应 n。当 M 中多个元素具有相同值时,这些函数使用不同的规则处理并列情况。
Matrix Function: GRADE ( M)
返回 M 的排名,将重复值转换为连续的秩。返回的矩阵恰好包含从 1 到矩阵元素个数之间的每个整数各一次。
GRADE({1, 0, 3; 3, 1, 2; 3, 0, 5}) ⇒ {3, 1, 6; 7, 4, 5; 8, 2, 9}
Matrix Function: RNKORDER ( M)
返回 M 的排名,将重复值转换为其连续秩的平均值。
RNKORDER({1, 0, 3; 3, 1, 2; 3, 0, 5}) ⇒ {3.5, 1.5, 7; 7, 3.5, 5; 7, 1.5, 9}
可以使用 GRADE 对向量排序:
COMPUTE v(GRADE(v))=v. /* 按升序对 v 排序。
COMPUTE v(GRADE(-v))=v. /* 按降序对 v 排序。