List of usage examples for org.apache.commons.math3.stat.regression OLSMultipleLinearRegression calculateTotalSumOfSquares
public double calculateTotalSumOfSquares() throws MathIllegalArgumentException
Returns the sum of squared deviations of Y from its mean.
If the model has no intercept term, 0
is used for the mean of Y - i.e., what is returned is the sum of the squared Y values.
The value returned by this method is the SSTO value used in the #calculateRSquared() R-squared computation.
From source file:modelcreation.ModelCreation.java
public static void printRegressionStatistics(OLSMultipleLinearRegression regression) { System.out.println("Adjusted R^2 = " + regression.calculateAdjustedRSquared()); System.out.println("R^2 = " + regression.calculateRSquared()); System.out.println("Residual Sum Of Squares = " + regression.calculateResidualSumOfSquares()); System.out.println("Total Sum of Squares = " + regression.calculateTotalSumOfSquares()); double[] standardErrors = regression.estimateRegressionParametersStandardErrors(); double[] residuals = regression.estimateResiduals(); double[] parameters = regression.estimateRegressionParameters(); int residualdf = residuals.length - parameters.length; for (int i = 0; i < parameters.length; i++) { double coeff = parameters[i]; double tstat = parameters[i] / regression.estimateRegressionParametersStandardErrors()[i]; double pvalue = new TDistribution(residualdf).cumulativeProbability(-FastMath.abs(tstat)) * 2; System.out.println("Coefficient(" + i + ") : " + coeff); System.out.println("Standard Error(" + i + ") : " + standardErrors[i]); System.out.println("t-stats(" + i + ") : " + tstat); System.out.println("p-value(" + i + ") : " + pvalue); }//www . j ava 2 s . co m }
From source file:modelcreation.ModelCreation.java
public static double evaluateModel(OLSMultipleLinearRegression regression, double[][] subXTest, double[] subYTest) { System.out.println("Adjusted R^2 = " + regression.calculateAdjustedRSquared()); System.out.println("R^2 = " + regression.calculateRSquared()); System.out.println("Residual Sum Of Squares = " + regression.calculateResidualSumOfSquares()); System.out.println("Total Sum of Squares = " + regression.calculateTotalSumOfSquares()); double[] parameters = regression.estimateRegressionParameters(); double[] predictions = new double[subYTest.length]; for (int i = 0; i < subYTest.length; i++) { double prediction = parameters[0] + (parameters[1] * subXTest[i][0]) + (parameters[2] * subXTest[i][1]); predictions[i] = prediction;//from w w w .j ava2 s . c o m } double meanSquaredError = calculateMeanSquaredError(subYTest, predictions); System.out.println("Mean Squared Error = " + meanSquaredError); return meanSquaredError; }