Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

quantileTDigest

quantileTDigest

導入バージョン: v1.1.0

t-digest アルゴリズムを使用して、数値データの数列の近似分位点を計算します。

メモリ消費量は log(n) で、n は値の数です。結果はクエリの実行順序に依存し、非決定論的です。

この関数のパフォーマンスは、quantilequantileTiming を下回ります。State のサイズと精度の比率という点では、この関数は quantile よりも大幅に優れています。

クエリ内で異なるレベルの複数の quantile* 関数を使用する場合、内部状態は結合されません (つまり、クエリは本来よりも非効率に動作します) 。この場合は、quantiles 関数を使用してください。

構文

quantileTDigest(level)(expr)

別名: medianTDigest

パラメータ

  • level — 省略可能。分位点 のレベルです。0 から 1 までの定数の浮動小数点数。level には [0.01, 0.99] の範囲の値を使用することを推奨します。デフォルト値: 0.5。level=0.5 の場合、この関数は中央値を計算します。Float*

引数

  • expr — カラム値に対する式。結果は数値型、Date、または DateTime になります。(U)Int* または Float* または Date または DateTime

戻り値

指定したレベルの近似 分位点。Date および DateTime の入力では、出力フォーマットは入力フォーマットと一致します。Float32 または Date または DateTime

t-digest を使用した 分位点 の計算

SELECT quantileTDigest(number) FROM numbers(10);
┌─quantileTDigest(number)─┐
│                       4 │
└─────────────────────────┘

関連項目

Navigation