指定された分位数におけるラスターオブジェクトの画素値を返します。
前提条件
ST_StatsQuantile を実行してラスターオブジェクトの分位数を計算してから、ST_Quantile を呼び出します。
構文
setof record ST_Quantile(raster raster_obj,
float8[] quantiles default NULL,
cstring bands default '',
boolean exclude_nodata_value default true,
out integer band,
out float8 quantile,
out float8 value)パラメーター
入力パラメーター
| パラメーター | 型 | デフォルト | 説明 |
|---|---|---|---|
raster_obj | raster | — | クエリするラスターオブジェクト。 |
quantiles | float8[] | NULL | 返す分位数。有効な値: 0.25、0.5、および 0.75。NULL を渡すと、3つの分位数すべてが返されます。 |
bands | cstring | '' | 含めるバンドのシリアル番号。サポートされているフォーマット: '0-2' (範囲) および '1,2,3' (リスト)。シリアル番号は 0 から始まります。空の文字列 (デフォルト) はすべてのバンドを含みます。 |
exclude_nodata_value | boolean | true | クエリから NoData 値を除外するかどうかを指定します。 |
出力パラメーター
| パラメーター | 型 | 説明 |
|---|---|---|
band | integer | バンドのシリアル番号。 |
quantile | float8 | 分位数。 |
value | float8 | 分位数における画素値。 |
例
例 1: すべてのバンド (バンド 0~2) の 0.25 分位数における画素値を返します。
SELECT (ST_Quantile(rast, ARRAY[0.25], '0-2', true)).* FROM rat_quantile WHERE id = 1;出力:
band | quantile | value
------+----------+-------
0 | 0.25 | 11
1 | 0.25 | 10
2 | 0.25 | 50
(3 rows)例 2: バンド 0 のすべての分位数 (0.25、0.5、0.75) における画素値を返します。
SELECT (ST_Quantile(rast, NULL, '0', true)).* FROM rat_quantile WHERE id = 1;出力:
band | quantile | value
------+----------+-------
0 | 0.25 | 11
0 | 0.5 | 11
0 | 0.75 | 65
(3 rows)