A class to perform 1D polynomial regression.
Polynomial Regression aims to fit a non-linear relationship to a set of points. It approximates this by solving a series of linear equations using a least-squares approach.
We can model the expected value y as an nth degree polynomial, yielding the general polynomial regression model:
yi = b0 + b1*xi + b2*xi^2 + ... + bm*xi^m, with i=1...n m corresponds to the degree of the polynomial equation n is the number of data points (for fitting)
see https://en.wikipedia.org/wiki/Polynomial_regression
- Author
- Thiemo Theile
- Date
- 2018-08-20
|
| PolynomialRegression () |
|
| PolynomialRegression (const std::string &i_regname, const size_t °reeOfRegression) |
|
void | setData (const std::vector< double > &in_X, const std::vector< double > &in_Y) override |
|
bool | fit () override |
|
double | f (const double &x) const override |
|
void | setDegree (const size_t &in_degree) override |
|
| FitModel (const std::string &i_regname, const size_t &i_nParam, const size_t &i_min_nb_pts) |
|
virtual | ~FitModel () |
|
virtual void | setData (const std::vector< double > &in_X, const std::vector< double > &in_Y)=0 |
|
void | setGuess (const std::vector< double > &lambda_in) |
|
virtual void | setLapseRate (const double &) |
|
virtual void | setDegree (const size_t &) |
|
virtual bool | fit ()=0 |
|
virtual double | f (const double &x) const =0 |
|
double | operator() (const double &x) const |
|
std::vector< double > | getParams () const |
|
std::string | getName () const |
|
std::string | getInfo () const |
|
void | setInfo (const std::string &info) |
|
FitModel & | operator= (const FitModel &source) |
|
bool | isReady () const |
|
std::string | toString () const |
|