rwlogo
SourcePro C++ 12.0

SourcePro® C++ API Reference Guide



   SourcePro C++
Documentation Home

RWLinearRegressionANOVA Class Reference
[Regression]

Provides information on the variance of residual errors for a linear regression model. More...

#include <rw/analytics/lranova.h>

List of all members.

Public Member Functions

 RWLinearRegressionANOVA ()
 RWLinearRegressionANOVA (const RWLinearRegressionANOVA &a)
 RWLinearRegressionANOVA (const RWLinearRegression &lr)
void setLinearRegression (const RWLinearRegression &lr)
int residualDegreesOfFreedom () const
int regressionDegreesOfFreedom () const
double residualSumOfSquares () const
double regressionSumOfSquares () const
double meanSquareResidual () const
double meanSquareRegression () const
double RSquare () const
double adjRSquare () const
double FStatistic () const
double FStatisticPValue () const
double FStatisticCriticalValue (double alpha=.05) const
RWLinearRegressionANOVAoperator= (const RWLinearRegressionANOVA &lra)

Detailed Description

ANOVA stands for analysis of variance. For the Linear Algebra Module class RWLinearRegressionANOVA, the analyzed variance is the variance of residual errors in a linear regression model, also known as the regression's goodness of fit.

Once an instance of RWLinearRegressionANOVA is constructed with a linear regression model, it can be queried for values related to goodness of fit, including the residual sum of squares, the coefficient of determination, and the F statistic.

Synopsis

 #include <rw/math/genmat.h>
 #include <rw/math/mathvec.h>
 #include <rw/analytics/linregress.h>
 #include <rw/analytics/lranova.h>

 RWGenMat<double> predictorMatrix;
 RWMathVec<double> observationVector;
 RWLinearRegression lr(predictorMatrix, observationVector);
 RWLinearRegressionANOVA anova(lr);

Examples

 #include <rw/analytics/linregress.h>
 #include <rw/analytics/lranova.h>

 int main() {
  RWGenMat<double> predictorMatrix =
                        "5x2 [1.2 2.1 8 7 3 3.2 6.4 4.6 2 2.3]";
  RWMathVec<double> observationVector = "[2.5 3.7 1.4 2.3 5.6]";

  RWLinearRegression lr(predictorMatrix, observationVector);
  RWLinearRegressionANOVA lranova(lr);

  cout << "f statistic:           " << lranova.FStatistic() <<
          endl;
  cout << "f statistic P-value:   " << lranova.FStatisticPValue()
          << endl;
  cout << "mean square residual   " <<
          lranova.meanSquareResidual() << endl;
  cout << "mean square regression " <<
          lranova.meanSquareRegression() << endl;
  cout << "Rsquare:               " << lranova.RSquare() << endl;
  cout << "adjusted Rsquare:      " << lranova.adjRSquare() <<
          endl;
  return 0;
 }

Constructor & Destructor Documentation

RWLinearRegressionANOVA::RWLinearRegressionANOVA (  ) 

Constructs an empty ANOVA object. Behavior undefined.

RWLinearRegressionANOVA::RWLinearRegressionANOVA ( const RWLinearRegressionANOVA a  ) 

Constructs a copy of a.

RWLinearRegressionANOVA::RWLinearRegressionANOVA ( const RWLinearRegression lr  ) 

Constructs an ANOVA object for the linear regression lr.


Member Function Documentation

double RWLinearRegressionANOVA::adjRSquare (  )  const [inline]

Returns the adjusted coefficient of determination as defined by the following formula:

$R_{adj}^2 = 1.0 - \frac{\displaystyle\sum_{i=1}^{n}(Y_i - \hat{Y}_i)^2 / (n - p - 2)}{\displaystyle\sum_{i=1}^{n}(Y_i - \overline{Y})^2 / (n - 1)} $

double RWLinearRegressionANOVA::FStatistic (  )  const [inline]

Returns the overall F statistic for the model as defined in Section 3.2, "Multiple Linear Regression," in the Business Analysis Module User's Guide.

double RWLinearRegressionANOVA::FStatisticCriticalValue ( double  alpha = .05  )  const [inline]

Returns the alpha level critical value for the overall F statistic.

double RWLinearRegressionANOVA::FStatisticPValue (  )  const [inline]

Returns the P-value for the overall F statistic.

double RWLinearRegressionANOVA::meanSquareRegression (  )  const [inline]

Returns the quotient of the regression sum of squares and the number of degrees of freedom for the regression.

double RWLinearRegressionANOVA::meanSquareResidual (  )  const [inline]

Returns the quotient of the residual sum of squares, RSS, and the number of degrees of freedom for the model.

RWLinearRegressionANOVA& RWLinearRegressionANOVA::operator= ( const RWLinearRegressionANOVA lra  ) 

Copies the contents of lra to self.

int RWLinearRegressionANOVA::regressionDegreesOfFreedom (  )  const [inline]

Returns the number of degrees of freedom for the model, defined as 1 less than the number of parameters in the model.

double RWLinearRegressionANOVA::regressionSumOfSquares (  )  const [inline]

Returns the quantity $\displaystyle\sum_{i=1}^{n}(\hat{Y}_i - \overline{Y})^2$ , where $\overline{Y} = \frac{1}{n}\displaystyle\sum_{i=1}^{n}(Y_i)$

int RWLinearRegressionANOVA::residualDegreesOfFreedom (  )  const [inline]

Returns the residual degrees of freedom, defined as the number of observations minus the number of parameters.

double RWLinearRegressionANOVA::residualSumOfSquares (  )  const [inline]

Returns the quantity RSS as defined by

$RSS = \displaystyle\sum_{i=1}^{n}(Y_i - \hat{Y}_i)^2$

double RWLinearRegressionANOVA::RSquare (  )  const [inline]

Returns the coefficient of determination as defined by the following formula:

$R^2 = 1.0 - \frac{\displaystyle\sum_{i=1}^{n}(Y_i - \hat{Y}_i)^2} {\displaystyle\sum_{i=1}^{n}(Y_i - \overline{Y})^2}$

void RWLinearRegressionANOVA::setLinearRegression ( const RWLinearRegression lr  ) 

Sets the linear regression for which the analysis of variance is to be performed.

 All Classes Functions Variables Typedefs Enumerations Enumerator Friends

© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.