# Cov¶

Covariance.

## Parameters¶

• ddof – defaults to 1

Delta Degrees of Freedom.

• n

## Examples¶

>>> from river import stats

>>> x = [-2.1,  -1,  4.3]
>>> y = [   3, 1.1, 0.12]

>>> cov = stats.Cov()

>>> for xi, yi in zip(x, y):
...     print(cov.update(xi, yi).get())
0.0
-1.044999
-4.286


This class has a revert method, and can thus be wrapped by utils.Rolling:

>>> from river import utils

>>> x = [-2.1,  -1, 4.3, 1, -2.1,  -1, 4.3]
>>> y = [   3, 1.1, .12, 1,    3, 1.1, .12]

>>> rcov = utils.Rolling(stats.Cov(), window_size=3)

>>> for xi, yi in zip(x, y):
...     print(rcov.update(xi, yi).get())
0.0
-1.045
-4.286
-1.382
-4.589
-1.415
-4.286


## Methods¶

get

Return the current value of the statistic.

revert
update

Update and return the called instance.

Parameters

• x
• y
• w – defaults to 1.0
update_many

## Notes¶

The outcomes of the incremental and parallel updates are consistent with numpy's batch processing when $$\text{ddof} \le 1$$.

## References¶

1. Schubert, E. and Gertz, M., 2018, July. Numerically stable parallel computation of (co-) variance. In Proceedings of the 30th International Conference on Scientific and Statistical Database Management (pp. 1-12).