Skip to content

Quantile

Running quantile.

Uses the PĀ² algorithm, which is also known as the "Piecewise-Parabolic quantile estimator". The code is inspired by LiveStat's implementation 2.

Parameters

  • q (float) ā€“ defaults to 0.5

    Determines which quantile to compute, must be comprised between 0 and 1.

Attributes

  • name

Examples

>>> from river import stats
>>> import numpy as np

>>> np.random.seed(42 * 1337)
>>> mu, sigma = 0, 1
>>> s = np.random.normal(mu, sigma, 500)

>>> median = stats.Quantile(0.5)
>>> for x in s:
...    _ = median.update(x)
>>> print(f'The estimated value of the 50th (median) quantile is {median.get():.4f}')
The estimated value of the 50th (median) quantile is -0.0275

>>> print(f'The real value of the 50th (median) quantile is {np.median(s):.4f}')
The real value of the 50th (median) quantile is -0.0135

>>> percentile_17 = stats.Quantile(0.17)
>>> for x in s:
...    _ = percentile_17.update(x)
>>> print(f'The estimated value of the 17th quantile is {percentile_17.get():.4f}')
The estimated value of the 17th quantile is -0.8652

>>> print(f'The real value of the 17th quantile is {np.percentile(s,17):.4f}')
The real value of the 17th quantile is -0.9072

Methods

get

Return the current value of the statistic.

update

Update and return the called instance.

Parameters

  • x (numbers.Number)

References