描述:
根据区段序号返回序列中对应成员。
语法:
A.segp(x,y)
备注:
计算表达式y在序列A中所属的区段序号,通过区段序号获取序列中的对应成员。缺省序列成员组成左闭右开的区间,A必须为有序序列,x表示针对序列A的每个成员计算表达式。
y非A成员,如果序列升序时y小于序列成员最小值(或序列降序时y大于序列成员最大值),则返回空;如果序列升序时y大于等于序列成员最大值,则返回成员最大值(或序列降序时y小于等于序列成员最小值,则返回成员最小值)。
参数:
A |
序列。 |
x |
计算表达式,一般为字段名,或者由字段名组成的合法表达式,可使用~引用当前记录。参数x可省略。 |
y |
表达式。 |
选项:
@r |
使用左开右闭区间。 |
返回值:
序列A中的成员
示例:
|
A |
|
1 |
[2,22,122,222,2222] |
|
2 |
=A1.segp(1) |
序列升序,参数y小于A1序列成员的最小值,返回空。 |
3 |
=A1.segp(100) |
22,序列成员组成的区段为[2,22)、[22,122)、 [122,222)、[222,2222) 、[2222,∞),100属于[22,122),即第2个区段,所以返回序列的第2个成员。 |
4 |
=A1.segp(3000) |
参数y大于A1序列成员的最大值,返回A1中的最大值2222。 |
5 |
=A1.segp(~+~,200) |
22 |
6 |
=A1.segp(~+~,244) |
122 |
7 |
=A1.segp@r(~+~,244) |
22,使用@r选项,区间左开右闭。 |