RunningStat
PHP implementations of online statistical algorithms
Loading...
Searching...
No Matches
Wikimedia\RunningStat Class Reference

Compute running mean, variance, and extrema of a stream of numbers. More...

Public Member Functions

 getCount ()
 Count the number of accumulated values.
 
 addObservation ( $x)
 Add a number to the data set.
 
 getMean ()
 Get the mean, or expected value.
 
 getVariance ()
 Get the estimated variance.
 
 getStdDev ()
 Get the estimated standard deviation.
 
 merge (RunningStat $other)
 Merge another RunningStat instance into this instance.
 

Public Attributes

 $n = 0
 Number of samples.
 
 $m1 = 0.0
 The first moment (or mean, or expected value).
 
 $m2 = 0.0
 The second central moment (or variance).
 
 $min = INF
 The least value in the set.
 
 $max = -INF
 The greatest value in the set.
 

Detailed Description

Compute running mean, variance, and extrema of a stream of numbers.

RunningStat instances are accumulator-like objects that provide a set of continuously-updated summary statistics for a stream of numbers, without requiring that each value be stored. The measures it provides are the arithmetic mean, variance, standard deviation, and extrema (min and max); together they describe the central tendency and statistical dispersion of a set of values.

One RunningStat instance can be merged into another; the resultant RunningStat has the state it would have had if it had accumulated each individual point. This allows data to be summarized in parallel and in stages without loss of fidelity.

Based on a C++ implementation by John D. Cook:

The in-line documentation for this class incorporates content from the English Wikipedia articles "Variance", "Algorithms for calculating variance", and "Standard deviation".

Member Function Documentation

◆ addObservation()

Wikimedia\RunningStat::addObservation (   $x)

Add a number to the data set.

Parameters
int | float$xValue to add

◆ getCount()

Wikimedia\RunningStat::getCount ( )

Count the number of accumulated values.

Returns
int

◆ getMean()

Wikimedia\RunningStat::getMean ( )

Get the mean, or expected value.

The arithmetic mean is the sum of all measurements divided by the number of observations in the data set.

Returns
float

◆ getStdDev()

Wikimedia\RunningStat::getStdDev ( )

Get the estimated standard deviation.

The standard deviation of a statistical population is the square root of its variance. It shows how much variation from the mean exists. In addition to expressing the variability of a population, the standard deviation is commonly used to measure confidence in statistical conclusions.

Returns
float Estimated standard deviation

◆ getVariance()

Wikimedia\RunningStat::getVariance ( )

Get the estimated variance.

Variance measures how far a set of numbers is spread out. A small variance indicates that the data points tend to be very close to the mean (and hence to each other), while a high variance indicates that the data points are very spread out from the mean and from each other.

Returns
float Estimated variance

◆ merge()

Wikimedia\RunningStat::merge ( RunningStat  $other)

Merge another RunningStat instance into this instance.

This instance then has the state it would have had if all the data had been accumulated by it alone.

Parameters
RunningStat$otherRunningStat instance to merge into this one

The documentation for this class was generated from the following file: