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

quantileGK

数値データ列の分位数Greenwald-Khannaアルゴリズムを使用して計算します。Greenwald-Khannaアルゴリズムは、高効率でデータストリーム上の分位数を計算するためのアルゴリズムで、2001年にマイケル・グリーンウォルドとサンジーブ・カンナによって紹介されました。このアルゴリズムは、リアルタイムで大きなデータストリームに対して正確な分位数を計算する必要があるデータベースやビッグデータシステムで広く使用されています。アルゴリズムは非常に効率的で、アイテムごとにO(log n)のスペースとO(log log n)の時間がかかります(ここでnは入力のサイズです)。また、非常に高精度で、高い確率で近似分位数値を提供します。

quantileGKは、ユーザーが近似分位数結果の精度を制御できるため、ClickHouseの他の分位数関数とは異なります。

構文

別名: medianGK

引数

  • accuracy — 分位数の精度。定数の正の整数。精度の値が大きいほど誤差が少なくなります。例えば、精度引数が100に設定されている場合、計算された分位数の誤差は、高い確率で1%を超えないことが保証されます。計算された分位数の精度とアルゴリズムの計算複雑性の間にはトレードオフがあります。より大きな精度は、正確に分位数を計算するためにより多くのメモリと計算リソースを必要としますが、より小さな精度引数は、計算をより速く、よりメモリ効率よくすることができますが、わずかに低い精度になります。

  • level — 分位数のレベル。オプションのパラメータ。0から1の間の定数浮動小数点数。デフォルト値: 0.5。level=0.5のとき、関数は中央値を計算します。

  • expr — 数値のデータ型DateまたはDateTimeのカラム値に対しての式です。

戻り値

  • 指定されたレベルと精度の分位数。

タイプ:

  • Float64は数値データ型の入力。
  • 入力値がDate型の場合はDate
  • 入力値がDateTime型の場合はDateTime

関連項目