tlx
Aggregate< Type_ > Class Template Reference

Calculate running aggregate statistics: feed it with values, and it will keep the minimum, the maximum, the average, the value number, and the standard deviation is values. More...

#include <aggregate.hpp>

## Public Types

using Type = Type_

## Public Member Functions

Aggregate ()=default
default constructor More...

Aggregate (size_t count, const double &mean, const double &nvar, const Type &min, const Type &max) noexcept
initializing constructor More...

Aggregateadd (const Type &value) noexcept
add a value to the running aggregation More...

size_t count () const noexcept
return number of values aggregated More...

const Type sum () const
return sum over all values aggregated More...

const Type total () const
return sum over all values aggregated More...

double average () const noexcept
return the average over all values aggregated More...

double avg () const noexcept
return the average over all values aggregated More...

double mean () const noexcept
return the average over all values aggregated More...

const Typemin () const noexcept
return minimum over all values aggregated More...

const Typemax () const noexcept
return maximum over all values aggregated More...

double variance (size_t ddof=1) const
return the variance of all values aggregated. More...

double var (size_t ddof=1) const
return the variance of all values aggregated. More...

double standard_deviation (size_t ddof=1) const
return the standard deviation of all values aggregated. More...

double stdev (size_t ddof=1) const
return the standard deviation of all values aggregated. More...

Aggregate operator+ (const Aggregate &a) const noexcept
operator + to combine two Aggregate<> More...

Aggregateoperator+= (const Aggregate &a) noexcept
operator += to combine two Aggregate<> More...

template<typename Archive >
void serialize (Archive &archive)
serialization method for cereal. More...

## Private Member Functions

double combine_means (const Aggregate &a) const noexcept
combine means, check if either count is zero. fix problems with NaN More...

double combine_variance (const Aggregate &other) const noexcept
T. More...

## Private Attributes

size_t count_
number of values aggregated More...

double mean_
mean of values More...

double nvar_
approximate count * variance; stddev = sqrt(nvar / (count-1)) More...

Type min_
minimum value More...

Type max_
maximum value More...

## Detailed Description

### template<typename Type_> class tlx::Aggregate< Type_ >

Calculate running aggregate statistics: feed it with values, and it will keep the minimum, the maximum, the average, the value number, and the standard deviation is values.

Definition at line 31 of file aggregate.hpp.

## Member Typedef Documentation

 using Type = Type_

Definition at line 34 of file aggregate.hpp.

## Constructor & Destructor Documentation

 Aggregate ( )
default

default constructor

 Aggregate ( size_t count, const double & mean, const double & nvar, const Type & min, const Type & max )
inlinenoexcept

initializing constructor

Definition at line 40 of file aggregate.hpp.

## Member Function Documentation

 Aggregate& add ( const Type & value )
inlinenoexcept

add a value to the running aggregation

Definition at line 46 of file aggregate.hpp.

 double average ( ) const
inlinenoexcept

return the average over all values aggregated

Definition at line 70 of file aggregate.hpp.

 double avg ( ) const
inlinenoexcept

return the average over all values aggregated

Definition at line 73 of file aggregate.hpp.

 double combine_means ( const Aggregate< Type_ > & a ) const
inlineprivatenoexcept

combine means, check if either count is zero. fix problems with NaN

Definition at line 146 of file aggregate.hpp.

 double combine_variance ( const Aggregate< Type_ > & other ) const
inlineprivatenoexcept

T.

Chan et al 1979, "Updating Formulae and a Pairwise Algorithm for Computing Sample Variances"

Definition at line 156 of file aggregate.hpp.

 size_t count ( ) const
inlinenoexcept

return number of values aggregated

Definition at line 60 of file aggregate.hpp.

 const Type& max ( ) const
inlinenoexcept

return maximum over all values aggregated

Definition at line 82 of file aggregate.hpp.

 double mean ( ) const
inlinenoexcept

return the average over all values aggregated

Definition at line 76 of file aggregate.hpp.

 const Type& min ( ) const
inlinenoexcept

return minimum over all values aggregated

Definition at line 79 of file aggregate.hpp.

 Aggregate operator+ ( const Aggregate< Type_ > & a ) const
inlinenoexcept

operator + to combine two Aggregate<>

Definition at line 116 of file aggregate.hpp.

 Aggregate& operator+= ( const Aggregate< Type_ > & a )
inlinenoexcept

operator += to combine two Aggregate<>

Definition at line 129 of file aggregate.hpp.

 void serialize ( Archive & archive )
inline

serialization method for cereal.

Definition at line 140 of file aggregate.hpp.

 double standard_deviation ( size_t ddof = 1 ) const
inline

return the standard deviation of all values aggregated.

ddof = delta degrees of freedom Set to 0 if you have the entire distribution Set to 1 if you have a sample (to correct for bias)

Definition at line 105 of file aggregate.hpp.

 double stdev ( size_t ddof = 1 ) const
inline

return the standard deviation of all values aggregated.

ddof = delta degrees of freedom Set to 0 if you have the entire distribution Set to 1 if you have a sample (to correct for bias)

Definition at line 113 of file aggregate.hpp.

 const Type sum ( ) const
inline

return sum over all values aggregated

Definition at line 64 of file aggregate.hpp.

 const Type total ( ) const
inline

return sum over all values aggregated

Definition at line 67 of file aggregate.hpp.

 double var ( size_t ddof = 1 ) const
inline

return the variance of all values aggregated.

ddof = delta degrees of freedom Set to 0 if you have the entire distribution Set to 1 if you have a sample (to correct for bias)

Definition at line 97 of file aggregate.hpp.

 double variance ( size_t ddof = 1 ) const
inline

return the variance of all values aggregated.

ddof = delta degrees of freedom Set to 0 if you have the entire distribution Set to 1 if you have a sample (to correct for bias)

Definition at line 88 of file aggregate.hpp.

## Member Data Documentation

 size_t count_
private

number of values aggregated

Definition at line 163 of file aggregate.hpp.

 Type max_
private

maximum value

Definition at line 175 of file aggregate.hpp.

 double mean_
private

mean of values

Definition at line 166 of file aggregate.hpp.

 Type min_
private

minimum value

Definition at line 172 of file aggregate.hpp.

 double nvar_
private

approximate count * variance; stddev = sqrt(nvar / (count-1))

Definition at line 169 of file aggregate.hpp.

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