quantileBFloat16
bfloat16 数値のサンプルから近似的な分位数を計算します。bfloat16
は、1ビットの符号ビット、8ビットの指数ビット、および7ビットの仮数ビットを持つ浮動小数点データ型です。関数は入力値を32ビット浮動小数点に変換し、最上位の16ビットを取り出します。次に bfloat16
の分位数を計算し、結果を64ビットの浮動小数点にゼロビットを追加して変換します。関数は相対誤差が0.390625%以下の高速な分位数推定器です。
構文
quantileBFloat16[(level)](expr)
エイリアス: medianBFloat16
引数
パラメータ
level
— 分位数のレベル。任意項目。可能な値は0から1までの範囲です。デフォルト値: 0.5。 Float。
返される値
- 指定されたレベルの近似的な分位数。
タイプ: Float64。
例
入力テーブルには整数カラムと浮動小数点カラムがあります:
┌─a─┬─────b─┐
│ 1 │ 1.001 │
│ 2 │ 1.002 │
│ 3 │ 1.003 │
│ 4 │ 1.004 │
└───┴───────┘
0.75分位数(第3四分位)を計算するクエリ:
SELECT quantileBFloat16(0.75)(a), quantileBFloat16(0.75)(b) FROM example_table;
結果:
┌─quantileBFloat16(0.75)(a)─┬─quantileBFloat16(0.75)(b)─┐
│ 3 │ 1 │
└───────────────────────────┴───────────────────────────┘
例では、浮動小数点値がすべて bfloat16
に変換されるときに1.0に切り捨てられていることに注意してください。
quantileBFloat16Weighted
quantileBFloat16
に似ていますが、シーケンスメンバーの重みを考慮します。
関連項目