Skip to main content
Since 1.3.0 Calculate the covariance from a two-dimensional statistical aggregate. The calculation uses the standard least-squares fitting for linear regression.
covariance(
    summary StatsSummary2D,
    [ method TEXT ]
) RETURNS DOUBLE PRECISION

Arguments

NameTypeDefaultRequiredDescription
summaryStatsSummary2D-The statistical aggregate produced by a stats_agg call
methodTEXTsample-The method used for calculating the covariance. The two options are population and sample, which can be abbreviated to pop or samp

Returns

ColumnTypeDescription
covarianceDOUBLE PRECISIONThe covariance of the least-squares fit line

Samples

Calculate the covariance of independent variable y and dependent variable x for each 15-minute time bucket:
SELECT
    id,
    time_bucket('15 min'::interval, ts) AS bucket,
    covariance(stats_agg(y, x)) AS summary
FROM foo
GROUP BY id, time_bucket('15 min'::interval, ts)