RangeFractile - スクリプトおよびチャート関数

RangeFractile() は、数値の範囲における n 番目の fractile (変位値) に相当する値を返します。

注: RangeFractile() は、分位数の計算時に最も近いランク間で線形補間を使用します。

Syntax:  

RangeFractile(fractile, first_expr[, Expression])

Return data type: 数値

Arguments:  

この関数の引数には、値のリストをそれ自体の中で返すレコード間関数が含まれます。

引数 説明
fractile 計算対象となる分位数 (変位値) に相当する値 (0~1 の範囲内)。
first_expr メジャーの対象となるデータが含まれている数式または項目。
Expression メジャーの対象となるデータ範囲が含まれている任意の数式または項目。

アプリにスクリプト例を追加して実行します。その後、結果列に含まれている項目をアプリのシートに追加して結果を表示します。

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

Examples and results:  

結果
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) は現在行およびその上の 2 行に MyField の値を返します。これらの値によって、RangeFractile() 関数への入力が指定されます。そのため、次のテーブルの最終行では RangeFractile(0.5, 3,4,6) と等しくなります。つまり、一連の 3、4、6 の 0.5 番目の分位数を計算します。次の表の最初の 2 行では、範囲内の値の数は減少し、現在行の上に行はありません。同様の結果が、他のレコード間関数でも生成されます。

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

] ;