Statistics tool based on incremental accumulation. More...
#include <ql/math/statistics/incrementalstatistics.hpp>
| Public Types | |
| typedef Real | value_type | 
| Public Member Functions | |
| Inspectors | |
| Size | samples () const | 
| number of samples collected | |
| Real | weightSum () const | 
| sum of data weights | |
| Real | mean () const | 
| Real | variance () const | 
| Real | standardDeviation () const | 
| Real | errorEstimate () const | 
| Real | skewness () const | 
| Real | kurtosis () const | 
| Real | min () const | 
| Real | max () const | 
| Size | downsideSamples () const | 
| number of negative samples collected | |
| Real | downsideWeightSum () const | 
| sum of data weights for negative samples | |
| Real | downsideVariance () const | 
| Real | downsideDeviation () const | 
| Modifiers | |
| void | add (Real value, Real weight=1.0) | 
| adds a datum to the set, possibly with a weight  More... | |
| template<class DataIterator > | |
| void | addSequence (DataIterator begin, DataIterator end) | 
| adds a sequence of data to the set, with default weight | |
| template<class DataIterator , class WeightIterator > | |
| void | addSequence (DataIterator begin, DataIterator end, WeightIterator wbegin) | 
| adds a sequence of data to the set, each with its weight  More... | |
| void | reset () | 
| resets the data to a null set | |
Statistics tool based on incremental accumulation.
It can accumulate a set of data and return statistics (e.g: mean, variance, skewness, kurtosis, error estimation, etc.). This class is a wrapper to the boost accumulator library.
| Real mean | ( | ) | const | 
returns the mean, defined as
\[ \langle x \rangle = \frac{\sum w_i x_i}{\sum w_i}. \]
| Real variance | ( | ) | const | 
returns the variance, defined as
\[ \frac{N}{N-1} \left\langle \left( x-\langle x \rangle \right)^2 \right\rangle. \]
| Real standardDeviation | ( | ) | const | 
returns the standard deviation \( \sigma \), defined as the square root of the variance.
| Real errorEstimate | ( | ) | const | 
returns the error estimate \( \epsilon \), defined as the square root of the ratio of the variance to the number of samples.
| Real skewness | ( | ) | const | 
returns the skewness, defined as
\[ \frac{N^2}{(N-1)(N-2)} \frac{\left\langle \left( x-\langle x \rangle \right)^3 \right\rangle}{\sigma^3}. \]
The above evaluates to 0 for a Gaussian distribution.
| Real kurtosis | ( | ) | const | 
returns the excess kurtosis, defined as
\[ \frac{N^2(N+1)}{(N-1)(N-2)(N-3)} \frac{\left\langle \left(x-\langle x \rangle \right)^4 \right\rangle}{\sigma^4} - \frac{3(N-1)^2}{(N-2)(N-3)}. \]
The above evaluates to 0 for a Gaussian distribution.
| Real min | ( | ) | const | 
returns the minimum sample value
| Real max | ( | ) | const | 
returns the maximum sample value
| Real downsideVariance | ( | ) | const | 
returns the downside variance, defined as
\[ \frac{N}{N-1} \times \frac{ \sum_{i=1}^{N} \theta \times x_i^{2}}{ \sum_{i=1}^{N} w_i} \]
, where \( \theta \) = 0 if x > 0 and \( \theta \) =1 if x <0
| Real downsideDeviation | ( | ) | const | 
returns the downside deviation, defined as the square root of the downside variance.
adds a datum to the set, possibly with a weight
| void addSequence | ( | DataIterator | begin, | 
| DataIterator | end, | ||
| WeightIterator | wbegin | ||
| ) | 
adds a sequence of data to the set, each with its weight