mirror of
https://github.com/aicodix/dsp.git
synced 2026-04-27 22:35:45 +00:00
added support for equidistant x
This commit is contained in:
parent
c188371411
commit
05ea242ae3
1 changed files with 17 additions and 0 deletions
|
|
@ -32,6 +32,23 @@ public:
|
|||
slope_ = covXY / varX;
|
||||
yint_ = avgY - slope_ * avgX;
|
||||
}
|
||||
SimpleLinearRegression(TYPE *y, int l, TYPE x0 = 0, TYPE dx = 1)
|
||||
{
|
||||
TYPE midL((l-1) / TYPE(2));
|
||||
TYPE avgX(x0 + dx*midL);
|
||||
TYPE avgY(0);
|
||||
for (int i = 0; i < l; ++i)
|
||||
avgY += y[i];
|
||||
avgY /= l;
|
||||
TYPE varX(0), covXY(0);
|
||||
for (int i = 0; i < l; ++i) {
|
||||
varX += (dx * (i - midL)) * (dx * (i - midL));
|
||||
covXY += (dx * (i - midL)) * (y[i] - avgY);
|
||||
}
|
||||
xint_ = avgX - avgY * varX / covXY;
|
||||
slope_ = covXY / varX;
|
||||
yint_ = avgY - slope_ * avgX;
|
||||
}
|
||||
TYPE xint()
|
||||
{
|
||||
return xint_;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue