Classes for carrying out regression analysis.

To carry out a regression analysis, generate the appropriate regression object from the RegressionFactory static class. For example:

double[] X = {0, 12, 29.5, 43, 53, 62.5, 75.5, 85, 93};
double[] Y = {8.98, 8.14, 6.67, 6.08, 5.90, 5.83, 4.68, 4.20, 3.72};

LeastSquaresRegression regress = null;

try {
regress = RegressionFactory.createLeastSquaresRegression(X, Y);
}
catch(MissingDataException mde) {
System.out.println(mde.getMessage());
}

System.out.println("b = " + regress.getGradient());
System.out.println("a = " + regress.getIntercept());

System.out.println("Explained SS = " + regress.getExplainedSumOfSquares());
System.out.println("Unexplained SS = " + regress.getUnexplainedSumOfSquares());

double[] residuals = regress.getResiduals();
double[] fits = regress.getFits();
double[] h = regress.getLeverageCoefficients();
double[] sr = regress.getStandardisedResiduals();
double[] str = regress.getStudentisedResiduals();

for (int i = 0; i < X.length; i++) {
System.out.println(
"\t" + i +
"\t" + residuals[i] +
"\t" + fits[i] +
"\t" + h[i] +
"\t" + sr[i] +
"\t" + str[i]
);
}