<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/probability/blob/v0.25.0/tensorflow_probability/python/stats/sample_stats.py#L644-L706) |

Cumulative estimates of variance.

    tfp.stats.cumulative_variance(
        x, sample_axis=0, name=None
    )

Given `N` samples of a scalar-valued random variable `X`, we can compute
cumulative variance estimates

result\[i\] = variance(x\[0:i+1\])

in O(N) work and O(log(N)) depth (the length of the longest series
of operations that are performed sequentially), with O(1) TF kernel
invocations. This implementation also arranges to do so in a
numerically accurate manner, i.e., without incurring a subtraction
of floating-point numbers of size quadratic in the data `x`. The
underlying algorithm is from \[1\].

<br />

<br />

<br />

| ## Args ||
|---|---|
| `x` | A numeric `Tensor` holding samples. |
| `sample_axis` | Scalar `Tensor` designating the axis holding samples. Other axes are treated in batch. Default value: `0` (leftmost dimension). |
| `name` | Python `str` name prefixed to Ops created by this function. Default value: `None` (i.e., `'cumulative_variance'`). |

<br />

<br />

<br />

<br />

| ## Returns ||
|---|---|
| `cum_var` | A `Tensor` of same shape and dtype as `x` giving cumulative variance estimates. The zeroth element is the variance of a size-1 set of samples, so 0. |

<br />

#### References

\[1\]: Philippe Pebay. Formulas for Robust, One-Pass Parallel Computation of
Covariances and Arbitrary-Order Statistical Moments. *Technical Report
SAND2008-6212* , 2008.
<https://prod-ng.sandia.gov/techlib-noauth/access-control.cgi/2008/086212.pdf>