median() function
The median()
function is a special application of the quantile()
function
that returns the median _value
of an input table or all non-null records in the input table
with values that fall within the 0.5
quantile (50th percentile) depending on the method used.
Function type: Selector or Aggregate
Output data type: Record
median(
column: "_value",
method: "estimate_tdigest",
compression: 0.0
)
When using the estimate_tdigest
or exact_mean
methods, it outputs non-null
records with values that fall within the 0.5
quantile.
When using the exact_selector
method, it outputs the non-null record with the
value that represents the 0.5
quantile.
The median()
function can only be used with float value types.
It is a special application of the quantile()
function
which uses an approximation implementation that requires floats.
You can convert your value column to a float column using the toFloat()
function.
Parameters
column
The column to use to compute the median.
Defaults to "_value"
.
Data type: String
method
Defines the method of computation.
Defaults to "estimate_tdigest"
.
Data type: String
The available options are:
estimate_tdigest
An aggregate method that uses a t-digest data structure to compute an accurate quantile estimate on large data sources.
exact_mean
An aggregate method that takes the average of the two points closest to the quantile value.
exact_selector
A selector method that returns the data point for which at least q
points are less than.
compression
Indicates how many centroids to use when compressing the dataset.
A larger number produces a more accurate result at the cost of increased memory requirements.
Defaults to 1000.0
.
Data type: Float
Examples
Median as an aggregate
from(bucket: "example-bucket")
|> filter(fn: (r) =>
r._measurement == "mem" and
r._field == "used_percent"
)
|> range(start:-12h)
|> window(every:10m)
|> median()
Median as a selector
from(bucket: "example-bucket")
|> filter(fn: (r) =>
r._measurement == "mem" and
r._field == "used_percent"
)
|> range(start:-12h)
|> window(every:10m)
|> median(method: "exact_selector")
Function definition
median = (method="estimate_tdigest", compression=0.0, tables=<-) =>
quantile(
q:0.5,
method:method,
compression:compression
)
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for InfluxDB and this documentation. To find support, the following resources are available:
InfluxDB Cloud and InfluxDB Enterprise customers can contact InfluxData Support.