跳至主要内容

quantileBFloat16

计算由 分位数 组成的样本的近似 bfloat16 数。bfloat16 是一种浮点数据类型,具有 1 个符号位、8 个指数位和 7 个小数位。该函数将输入值转换为 32 位浮点数并获取最高有效 16 位。然后它计算 bfloat16 分位数值并将结果通过追加零位转换为 64 位浮点数。该函数是一种快速的分位数估计器,相对误差不大于 0.390625%。

语法

quantileBFloat16[(level)](expr)

别名:medianBFloat16

参数

参数

  • level — 分位数级别。可选。可能的值范围为 0 到 1。默认值:0.5。 浮点数

返回值

  • 指定级别的近似分位数。

类型: Float64

示例

输入表具有整数和浮点数列

┌─a─┬─────b─┐
│ 1 │ 1.001 │
│ 2 │ 1.002 │
│ 3 │ 1.003 │
│ 4 │ 1.004 │
└───┴───────┘

计算 0.75 分位数(第三四分位数)的查询

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,但会考虑每个序列成员的权重。

另请参阅