faif
Classes | Typedefs | Functions
faif::timeseries Namespace Reference

TimeSeries (collection of triples<timestamp, value, quality>) tools. More...

Classes

class  Discretizer
 
struct  KNNDef
 the KNN parameters, k = num_neighbours, ref_size = size of reference block More...
 
class  Prediction
 
class  PredictionAR
 
class  PredictionKNN
 
class  PredictionRangeException
 bad prediction range exception More...
 
class  PredictionVisitor
 
class  Section
 
class  TimeSeriesDigit
 
class  TimeSeriesReal
 timeseries - time hold as RealTime More...
 
struct  TimeValueDigit
 
struct  TimeValueReal
 timeseries value, single value in given real time. Plain old data More...
 
class  Transformation
 transformation - class to change timeseries stored in TimeSeriesDigit and/or TimeSeriesReal More...
 

Typedefs

typedef std::vector< double > ARDef
 the AR parameter collection f(t) = a[0]f(t-1) + a[1]f(t-2) + ... a[n-1]f(t-n) More...
 
typedef boost::posix_time::ptime RealTime
 the real time type More...
 
typedef boost::posix_time::time_duration RealDuration
 the real time duration More...
 
typedef int DigitTime
 digit time type. DigitTime < 0 past, DigitTime >= 0 future, DigitTime == 0 now. More...
 
typedef double Value
 value - real number More...
 
typedef double Quality
 quality - real 0..1 More...
 

Functions

template<typename V >
std::ostream & operator<< (std::ostream &os, const Section< V > &s)
 
template<typename V >
std::ostream & operator<< (std::ostream &os, const Discretizer< V > &d)
 
template<typename It >
Discretizer< typename It::value_type > createEqualWidthSections (It begin, It end, unsigned int num_sections)
 
template<typename It >
Discretizer< typename It::value_type > createKMeansSections (It begin, It end, const unsigned int num_sections)
 
std::ostream & operator<< (std::ostream &os, const PredictionAR &ar)
 
std::ostream & operator<< (std::ostream &os, const PredictionKNN &knn)
 
std::ostream & operator<< (std::ostream &os, const Prediction &pred)
 
long to_time_t (const RealTime &real_time)
 convert from RealTime to posix_t (num of seconds from 1970) More...
 
std::ostream & operator<< (std::ostream &os, const TimeValueReal &time_val)
 
std::ostream & operator<< (std::ostream &os, const TimeSeriesReal &time_series)
 
std::ostream & operator<< (std::ostream &os, const TimeValueDigit &time_val)
 
double getAvgAbsDiff (const TimeSeriesDigit &ts1, const TimeSeriesDigit &ts2)
 
double getAvgRelDiff (const TimeSeriesDigit &ts1, const TimeSeriesDigit &ts2)
 
std::ostream & operator<< (std::ostream &os, const TimeSeriesDigit &time_series)
 
TimeSeriesDigit correlation (const TimeSeriesDigit &ts1, const TimeSeriesDigit &ts2, int scope)
 
TimeSeriesDigit create (const TimeSeriesReal &in, const Transformation &transformation)
 
TimeSeriesReal create (const TimeSeriesDigit &in, const Transformation &transformation)
 

Detailed Description

TimeSeries (collection of triples<timestamp, value, quality>) tools.

Typedef Documentation

typedef std::vector<double> faif::timeseries::ARDef

the AR parameter collection f(t) = a[0]f(t-1) + a[1]f(t-2) + ... a[n-1]f(t-n)

typedef boost::posix_time::ptime faif::timeseries::RealTime

the real time type

typedef boost::posix_time::time_duration faif::timeseries::RealDuration

the real time duration

digit time type. DigitTime < 0 past, DigitTime >= 0 future, DigitTime == 0 now.

typedef double faif::timeseries::Value

value - real number

typedef double faif::timeseries::Quality

quality - real 0..1

Function Documentation

template<typename It >
Discretizer<typename It::value_type> faif::timeseries::createKMeansSections ( It  begin,
It  end,
const unsigned int  num_sections 
)

make the discretizer based on sequence of values- use k-means method

References faif::timeseries::Discretizer< V >::discretize().

std::ostream& faif::timeseries::operator<< ( std::ostream &  os,
const PredictionAR ar 
)
inline
std::ostream& faif::timeseries::operator<< ( std::ostream &  os,
const PredictionKNN knn 
)
inline
long faif::timeseries::to_time_t ( const RealTime real_time)
inline

convert from RealTime to posix_t (num of seconds from 1970)

std::ostream& faif::timeseries::operator<< ( std::ostream &  os,
const TimeValueReal time_val 
)
inline
std::ostream& faif::timeseries::operator<< ( std::ostream &  os,
const TimeSeriesReal time_series 
)
inline

(for debugging)

std::ostream& faif::timeseries::operator<< ( std::ostream &  os,
const TimeValueDigit time_val 
)
inline
double faif::timeseries::getAvgAbsDiff ( const TimeSeriesDigit ts1,
const TimeSeriesDigit ts2 
)
inline

the average of difference for two timeserieses

double faif::timeseries::getAvgRelDiff ( const TimeSeriesDigit ts1,
const TimeSeriesDigit ts2 
)
inline

the average of difference (relative) for two timeserieses

std::ostream& faif::timeseries::operator<< ( std::ostream &  os,
const TimeSeriesDigit time_series 
)
inline
TimeSeriesDigit faif::timeseries::correlation ( const TimeSeriesDigit ts1,
const TimeSeriesDigit ts2,
int  scope 
)
inline

the correlation of timeserieses in range 0..scope

References faif::timeseries::TimeSeriesDigit::getAvg(), and faif::timeseries::TimeSeriesDigit::getSigma().

TimeSeriesDigit faif::timeseries::create ( const TimeSeriesReal in,
const Transformation transformation 
)
inline

creates digit time series from real time series. Linear resampling: arythmetic everage for aggregation, the linear approxymation for missing data.

TimeSeriesReal faif::timeseries::create ( const TimeSeriesDigit in,
const Transformation transformation 
)
inline