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

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

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

構文:  

RangeFractile(fractile, first_expr[, Expression])

戻り値のデータ型: 数値

引数:  

この関数の引数式には、レコード間関数を含めることができます。これらの関数は、その内部で値リストを返します。

引数 説明
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

例と結果:  

結果
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

] ;