文档文档

experimental.quantile() 函数

experimental.quantile()随时可能更改的实验性软件包

experimental.quantile() 返回非空记录,其 _value 列中的值落在指定的分位数内或表示指定的分位数。

_value 列必须包含浮点数值。

计算方法和行为

experimental.quantile() 的行为类似于聚合函数选择器函数,具体取决于 method 参数。以下是可用的计算方法:

estimate_tdigest

一种聚合方法,使用 t-digest 数据结构 在大型数据源上计算准确的分位数估计。使用时,experimental.quantile() 输出非空记录,其值落在指定的分位数内。

exact_mean

一种聚合方法,取最接近分位数的两个点的平均值。使用时,experimental.quantile() 输出非空记录,其值落在指定的分位数内。

exact_selector

一种选择器方法,返回数据点,其中至少有 q 个点小于该数据点。使用时,experimental.quantile() 输出非空记录,其值表示指定的分位数。

函数类型签名
(
    <-tables: stream[{A with _value: float}],
    q: float,
    ?compression: float,
    ?method: string,
) => stream[{A with _value: float}]

有关更多信息,请参阅 函数类型签名

参数

q

(必需) 要计算的分位数 ([0 - 1])。

method

计算方法。默认值为 estimate_tdigest

支持的方法:

  • estimate_tdigest
  • exact_mean
  • exact_selector

compression

压缩数据集时要使用的质心数。默认值为 1000.0

更大的数字会产生更准确的结果,但会增加内存需求。

tables

输入数据。默认值为管道转发数据 (<-)。

示例

返回每个输入表中第 50 百分位数的值

import "experimental"
import "sampledata"

sampledata.float()
    |> experimental.quantile(q: 0.5)

查看示例输入和输出

返回表示每个输入表中第 50 百分位数的值

import "experimental"
import "sampledata"

sampledata.float()
    |> experimental.quantile(q: 0.5, method: "exact_selector")

查看示例输入和输出


此页是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像当前一样使用它,而无需对代码进行任何更改。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一款开源、高速、近数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。InfluxDB 3 Enterprise 以 Core 的基础为构建,增加了高可用性、读取副本、增强的安全性以及数据压缩,从而实现更快的查询和优化的存储。InfluxDB 3 Enterprise 的免费层可供非商业家庭或业余爱好者使用。

有关更多信息,请查看