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) は現在行およびその上の 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
] ;
(テーブル形式)
ドキュメントに例のスクリプトを追加して実行します。その後、結果列に含まれている項目をドキュメントのシートに追加して結果を表示します。
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 |