メインコンテンツまでスキップ
メインコンテンツまでスキップ

quantileTDigest

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

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

この関数の性能は、quantile または quantileTiming の性能よりも劣ります。状態サイズと精度の比率に関しては、この関数は quantile よりはるかに優れています。

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

構文

quantileTDigest(level)(expr)

エイリアス: medianTDigest.

引数

  • level — 分位数のレベル。オプションのパラメータ。0 から 1 の間の定数浮動小数点数。level 値は [0.01, 0.99] の範囲を使用することを推奨します。デフォルト値: 0.5。level=0.5 の場合、この関数は median を計算します。
  • expr — 数値の データ型Date または DateTime の列値に対する式。

戻り値

  • 指定されたレベルの近似分位数。

タイプ:

  • 数値データ型入力の場合は Float64
  • 入力値が Date 型であるなら Date
  • 入力値が DateTime 型であるなら DateTime

クエリ:

SELECT quantileTDigest(number) FROM numbers(10)

結果:

┌─quantileTDigest(number)─┐
│                     4.5 │
└─────────────────────────┘

参考