pdf

# GeneralStatistics

## NAME

GeneralStatistics −

Statistics tool.

## SYNOPSIS

#include <ql/math/statistics/generalstatistics.hpp>

Public Types

typedef Real value_type

Public Member Functions
Inspectors

Size samples () const
number of samples collected

const std::vector< std::pair
< Real, Real > > & data () const "
collected data

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
template<class Func , class Predicate > std::pair< Real, Size > expectationValue (const Func &f, const Predicate &inRange) const
Real percentile
(Real y) const
Real topPercentile
(Real y) const

Modifiers

void add (Real value, Real weight=1.0)
adds a datum to the set, possibly with a weight

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

void reset ()
resets the data to a null set

void reserve (Size n) const
informs the internal storage of a planned increase in size

void sort () const
sort the data set in increasing order

## Detailed Description

Statistics tool.

This class accumulates a set of data and returns their statistics (e.g: mean, variance, skewness, kurtosis, error estimation, percentile, etc.) based on the empirical distribution (no gaussian assumption)

It doesn’t suffer the numerical instability problem of IncrementalStatistics. The downside is that it stores all samples, thus increasing the memory requirements.

## Member Function Documentation

Real mean () const angle = ac{ w_i x_i}{ w_i}. ]
returns the mean, defined as gle x

Real variance () const
returns the variance, defined as ma^2 = ac{N}{N-1} tgle t( x-gle x angle. ] ight ight)^2 angle

Real standardDeviation () const
returns the standard deviation \$ ma \$, defined as the square root of the variance.

Real errorEstimate () const
returns the error estimate on the mean value, defined as \$ \psilon = ma/t{N}. \$

Real skewness () const
returns the skewness, defined as ac{N^2}{(N-1)(N-2)} ac{tgle t( x-gle x angle}{ma^3}. ] The above evaluates to 0 for a ight ight)^3 angle Gaussian distribution.

Real kurtosis () const
returns the excess kurtosis, defined as ac{N^2(N+1)}{(N-1)(N-2)(N-3)} angle}{ma^4} - ight ight)^4 angle ac{tgle t(x-gle x ac{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

std::pair<Real,Size> expectationValue (const Func &f, const Predicate &inRange) const
Expectation value of a function \$ f \$ on a given range \$ thcal{R} \$,ight] = ac{_{x_i in thcal{R}} f(x_i) w_i}{ i.e., thrm{E}t[f ;|; thcal{R} _{x_i in thcal{R}} w_i}. ] The range is passed as a boolean function returning true if the argument belongs to the range or false otherwise.

The function returns a pair made of the result and the number of observations in the given range.

Real percentile (Realy) const r { x r } { } x w } _ \$ i
\$ y \$-th percentile, defined as the value \$ st y = ac{_{x_i < } u { c _ h i t w h _ i } ]

re rm#13 must be in the range rm#262

Real topPercentile (Realy) const r { x r } { } x w } _ \$ i
\$ y \$-th top percentile, defined as the value \$ st y = ac{_{x_i > } u { c _ h i t w h _ i } ]

re rm#13 must be in the range rm#262

void add (Realvalue, Realweight = 1.0)
adds a datum to the set, possibly with a weight Precondition:

weights must be positive or null

## Author

Generated automatically by Doxygen for QuantLib from the source code.

pdf