RangeFractile - 脚本和图表函数
RangeFractile() 用于返回与数值系列的第 n 个fractile(位数)对应的值。
语法:
RangeFractile(fractile, first_expr[, Expression])
返回数据类型: 数字
参数:
该函数的参数可能包含内部记录函数,并在其内部返回一系列值。
- fractile: 可以计算与分位数(表示为分数的位数)对应的介于 0 和 1 之间的数字。
- first_expr: 表达式或字段包含要度量的数据。
- Expression: 可选表达式或字段包含要度量的数据范围。
示例:
示例 | 结果 |
---|---|
RangeFractile (0.24,1,2,4,6) | 返回 1.72 |
RangeFractile(0.5,1,2,3,4,6) |
返回 3 |
RangeFractile (0.5,1,2,5,6) |
返回 3.5 |
示例: (使用表达式)
RangeFractile (0.5, Above(Sum(MyField),0,3))
在此例中,内部记录函数 Above() 包含可选的 offset 和 count 参数。这将产生一系列可用作任何范围函数的输入的结果。在这种情况下,Above(Sum(MyField),0,3) 会返回当前行和上方两行的 MyField 结果。这些值可以作为 RangeFractile() 函数的输入。因此,对于下面表格中的底行,这相当于 RangeFractile(0.5, 3,4,6),即为值系列 3、4 和 6 计算分位数 0.5。 对于下面表格中的前两行,如果当前行上方没有任何行,则相应地减少范围中值的数量。将会为其他内部记录函数产生类似的结果。
MyField | RangeFractile(0.5, Above(Sum(MyField),0,3)) |
---|---|
1 | 1 |
2 | 1.5 |
3 | 2 |
4 | 3 |
5 | 4 |
6 | 5 |
示例中所使用的数据:
RangeTab:
LOAD * INLINE [
MyField
1
2
3
4
5
6
] ;
示例: (表格形式)
将示例脚本添加到文档并运行。然后,至少要将结果列中列出的字段添加到文档中的表格才能查看结果。
RangeTab:
LOAD recno() as RangeID, RangeFractile(0.5,Field1,Field2,Field3) as MyRangeFrac INLINE [
Field1, Field2, Field3
10,5,6
2,3,7
8,2,8
18,11,9
5,5,9
9,4,2
];
结果列表显示了为表格中的每条记录返回的 MyRangeFrac 值。
RangeID | MyRangeFrac |
---|---|
1 | 6 |
2 | 3 |
3 | 8 |
4 | 11 |
5 | 5 |
6 | 4 |