quantile() 函数
quantile()
从每个输入表中返回位于指定分位数内的值的行,或返回代表指定分位数的值的行。
quantile()
支持具有浮点值的列。
函数行为
quantile()
根据 method
参数的指定作为聚合或选择转换。
- 聚合:当使用
estimate_tdigest
或exact_mean
方法时,quantile()
作为聚合转换,并输出位于指定分位数内的非空记录的平均值。 - 选择器:当使用
exact_selector
方法时,quantile()
作为选择器转换,并输出代表指定分位数的值的非空记录。
函数类型签名
(
<-tables: stream[A],
q: float,
?column: string,
?compression: float,
?method: string,
) => stream[A] where A: Record
参数
column
用于计算分位数的列。默认为 _value
。
q
(必需) 要计算的分位数。必须在 0.0
和 1.0
之间。
method
计算方法。默认为 estimate_tdigest
。
可用方法:
- estimate_tdigest:使用 t-digest 数据结构 计算大数据源上精确分位数估计的聚合方法。
- exact_mean:计算位于分位数值最近的两点的平均值的聚合方法。
- exact_selector:选择器方法,返回至少有
q
个点小于的值的行。
compression
压缩数据集时使用的中心点数量。默认为 1000.0
。
更大的数字会产生更精确的结果,但会增加内存需求。
tables
输入数据。默认为管道传输数据 (<-
)。
示例
作为聚合的分位数
import "sampledata"
sampledata.float()
|> quantile(q: 0.99, method: "estimate_tdigest")
作为选择器的分位数
import "sampledata"
sampledata.float()
|> quantile(q: 0.5, method: "exact_selector")
这个页面有帮助吗?
感谢您的反馈!