numeric
Public Member Functions | Protected Member Functions | List of all members
numeric::SeriesStats Class Reference

#include <Stats.hpp>

Public Member Functions

template<typename Derived >
 SeriesStats (const Eigen::MatrixBase< Derived > &data)
 
template<typename Derived >
 SeriesStats (const Eigen::MatrixBase< Derived > &data, double ddof)
 
template<typename Derived1 , typename Derived2 >
 SeriesStats (const Eigen::MatrixBase< Derived1 > &data, const Eigen::MatrixBase< Derived2 > &weights)
 
template<typename Derived1 , typename Derived2 >
 SeriesStats (const Eigen::MatrixBase< Derived1 > &data, const Eigen::MatrixBase< Derived2 > &weights, double ddof)
 
const Eigen::VectorXd & min () const
 
const Eigen::VectorXd & max () const
 
const Eigen::VectorXd & mean () const
 
const Eigen::MatrixXd & var () const
 
const Eigen::VectorXd & stdev () const
 
size_t n () const
 

Protected Member Functions

template<typename Derived >
Eigen::VectorXd weightOnes (const Eigen::MatrixBase< Derived > &data)
 
template<typename Derived >
void compute (const Eigen::MatrixBase< Derived > &data)
 
template<typename Derived >
void compute (const Eigen::MatrixBase< Derived > &data, double ddof)
 
template<typename Derived1 , typename Derived2 >
void compute (const Eigen::MatrixBase< Derived1 > &data, const Eigen::MatrixBase< Derived2 > &weights)
 
template<typename Derived1 , typename Derived2 >
void compute (const Eigen::MatrixBase< Derived1 > &data, const Eigen::MatrixBase< Derived2 > &weights, double ddof)
 

Detailed Description

Compute statistics for multiple time series given as a matrix (eigen matrix).

One column is an observation and each row is a data item.

e.g. like (time step row is for illustrative purpose only)

time step | 0 | 1 | 2 | ... -------—+---—+----—+--—+– speed | 0.1 | 0.2 | 0.2 | .. xpos | 0.0 | 0.1 | 0.3 | ...

Constructor & Destructor Documentation

◆ SeriesStats() [1/4]

template<typename Derived >
numeric::SeriesStats::SeriesStats ( const Eigen::MatrixBase< Derived > &  data)
inline

◆ SeriesStats() [2/4]

template<typename Derived >
numeric::SeriesStats::SeriesStats ( const Eigen::MatrixBase< Derived > &  data,
double  ddof 
)
inline

◆ SeriesStats() [3/4]

template<typename Derived1 , typename Derived2 >
numeric::SeriesStats::SeriesStats ( const Eigen::MatrixBase< Derived1 > &  data,
const Eigen::MatrixBase< Derived2 > &  weights 
)
inline

◆ SeriesStats() [4/4]

template<typename Derived1 , typename Derived2 >
numeric::SeriesStats::SeriesStats ( const Eigen::MatrixBase< Derived1 > &  data,
const Eigen::MatrixBase< Derived2 > &  weights,
double  ddof 
)
inline

Constructor for the class that gives statistics on time series data.

Parameters
dataThe time series data. Each row is a data item.
weightsA vector with amount of observations length weighing each column. Weights are normalized to one and are one by default.
ddofDelta degree of freedom for adjusting the variance estimate. Default is 0. ( var = 1 / (N-ddof) * sum (x_i - x_mean)^2 )

Member Function Documentation

◆ compute() [1/4]

template<typename Derived >
void numeric::SeriesStats::compute ( const Eigen::MatrixBase< Derived > &  data)
inlineprotected

◆ compute() [2/4]

template<typename Derived >
void numeric::SeriesStats::compute ( const Eigen::MatrixBase< Derived > &  data,
double  ddof 
)
inlineprotected

◆ compute() [3/4]

template<typename Derived1 , typename Derived2 >
void numeric::SeriesStats::compute ( const Eigen::MatrixBase< Derived1 > &  data,
const Eigen::MatrixBase< Derived2 > &  weights 
)
inlineprotected

◆ compute() [4/4]

template<typename Derived1 , typename Derived2 >
void numeric::SeriesStats::compute ( const Eigen::MatrixBase< Derived1 > &  data,
const Eigen::MatrixBase< Derived2 > &  weights,
double  ddof 
)
inlineprotected

◆ max()

const Eigen::VectorXd& numeric::SeriesStats::max ( ) const
inline

◆ mean()

const Eigen::VectorXd& numeric::SeriesStats::mean ( ) const
inline

◆ min()

const Eigen::VectorXd& numeric::SeriesStats::min ( ) const
inline

◆ n()

size_t numeric::SeriesStats::n ( ) const
inline

◆ stdev()

const Eigen::VectorXd& numeric::SeriesStats::stdev ( ) const
inline

◆ var()

const Eigen::MatrixXd& numeric::SeriesStats::var ( ) const
inline

◆ weightOnes()

template<typename Derived >
Eigen::VectorXd numeric::SeriesStats::weightOnes ( const Eigen::MatrixBase< Derived > &  data)
inlineprotected

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