Simple linear regression.
public LinRegress(TVec X, TVec Y, TVec b, bool Constant, TVec Weights, TVec YCalc, TMtx ATA);
The routine fits equations to data by minimizing the sum of squared residuals:
SS = Sum [y(k) - ycalc(k)]^2 ,
where y(k) and ycalc(k) are respectively the observed and calculated value of the dependent variable for observation k. ycalc(k) is a function of the regression parameters b(0) and b(1). In case constant term is used, the observed values obey the following equation:
y(k) = b(0) + b(1) * x
i.e
Y = b(0) + b(1)*X.
or if constant term is NOT used:
y(k) = b(0) * x
To calculate additional regression statistical parameters, use RegressTest routine.
The following example loads data for simple linear regression (line equation) and then extracts line parameters b(0)=n and b(1)=k:
using Dew.Math; using Dew.Stats; using Dew.Stats.Units; using Steema.TeeChart; namespace Dew.Examples { private void Example(Styles.Line series1, Styles.Line series2) { Vector x = new Vector(0); Vector y = new Vector(0); Vector b = new Vector(0); Vector yhat = new Vector(0); x.SetIt(false,new double[] {1.0, 1.5, 2.3, 3.8, 4.2, 5.0, 5.3, 5.9}); y.SetIt(false,new double[] {11, 12, 12.5, 14, 14.3, 15.2, 15.3, 17}); LinRegress(x,y,b,null,yhat,null); MtxVecTee.DrawValues(x,y,series1,false); // draw original data MtxVecTee.DrawValues(x,yhat,series2,false); // draw fitted data } }
|
What do you think about this topic? Send feedback!
|
|
Copyright (c) 1999-2010 by Dew Research. All rights reserved.
|