13 void add(
const double& x,
const double& y)
52add(
const double& x,
const double& y)
74 return m_data->m_x.numElements();
80 return m_data->m_x.average();
86 return m_data->m_y.average();
92 return m_data->m_x2.average();
98 return m_data->m_y2.average();
104 return m_data->m_xy.average();
110 return averageX2() - 2*averageXY() + averageY2();
116 return averageX2() - averageX()*averageX()
117 -2*(averageXY() - averageX()*averageY())
118 + averageY2() - averageY()*averageY();
124 return (averageXY() - averageX()*averageY())
125 / sqrt((averageX2() - averageX()*averageX())
126 * (averageY2() - averageY()*averageY()));
130fitting(
double &a,
double &b,
double &residual)
const
132 double d = averageX2() - averageX()*averageX();
133 double n = averageXY() - averageX()*averageY();
134 if (std::abs(d) < 1e-8) {
137 residual = averageY2() - averageY()*averageY();
141 b = (averageX2()*averageY() - averageXY()*averageX()) / d;
142 residual = averageY2()-averageY()*averageY()
incrementaly maintain average of data sequence
void clear(double a=0.0, int e=0)
void merge(const Average &r)
double add(const double &x)
Add an element x.
void add(const double &x, const double &y)
void merge(const Data &r)
TwoDimensionalStatistics()
std::unique_ptr< Data > m_data
double meanSquaredErrors() const
double correlation() const
void fitting(double &a, double &b, double &residual) const
ax + b = y
void merge(const TwoDimensionalStatistics &)
double meanSquaredErrorsAdjustConstant() const
~TwoDimensionalStatistics()
void add(const double &x, const double &y)