module analysis::statistics::SimpleRegression
Statistical methods for simple regression.
Usage
import analysis::statistics::SimpleRegression;
Dependencies
import Exception;
Description
The following functions are provided:
- R
- RSquare
- XSumSquares
- intercept
- interceptStdErr
- meanSquareError
- predict
- regressionSumSquares
- significance
- slope
- slopeConfidenceInterval
- slopeStdErr
- sumOfCrossProducts
- sumSquaredErrors
- totalSumSquares
function intercept
Intercept of regression line.
num intercept(lrel[num,num] values) throws IllegalArgument
Returns the interce of the estimated regression line. The least squares estimate of the intercept is computed using these normal equations
function interceptStdErr
Standard error of intercept estimate.
num interceptStdErr(lrel[num,num] values) throws IllegalArgument
Returns the http://www.xycoon.com/standarderrorb0.htm[standard error of the intercept estimate], usually denoted s(b0).
function meanSquareError
Sum of squared errors divided by the degrees of freedom.
num meanSquareError(lrel[num,num] values) throws IllegalArgument
Returns the sum of squared errors divided by the degrees of freedom, usually abbreviated MSE.
function R
Pearson's product-moment correlation coefficient.
num R(lrel[num,num] values) throws IllegalArgument
Computes Pearson's product-moment correlation coefficient. More functions related to this coefficient can be found in Correlation.
function regressionSumSquares
Sum of squared deviations of the predicted y values about their mean.
num regressionSumSquares(list[tuple[num,num]] values) throws IllegalArgument
Returns the sum of squared deviations of the predicted y values about their mean (which equals the mean of y). This is usually abbreviated SSR or SSM.
function RSquare
Coefficient of determination.
num RSquare(lrel[num,num] values) throws IllegalArgument
Returns the coefficient of determination usually denoted r__^2^. It provides a measure of how well future outcomes are likely to be predicted by the regression model.
function significance
Significance of the slope correlation.
num significance(lrel[num,num] values) throws IllegalArgument
Returns the significance level of the slope (equiv) correlation. Specifically, the returned value is the smallest alpha such that the slope confidence interval with significance level equal to alpha does not include 0. On regression output, this is often denoted Prob(|t| > 0)
Pitfalls
The validity of this statistic depends on the assumption that the observations included in the model are drawn from a Bivariate Normal Distribution.
function slope
Slope of regression line.
num slope(lrel[num,num] values) throws IllegalArgument
Returns the slope of the estimated regression line. The least squares estimate of the slope is computed using the http://www.xycoon.com/estimation4.htm[normal equations]. The slope is sometimes denoted b1.
function slopeConfidenceInterval
The 95% slope confidence interval.
num slopeConfidenceInterval(lrel[num,num] values) throws IllegalArgument
Returns the half-width of a 95% confidence interval for the slope estimate. The 95% confidence interval is
(slope - slopeConfidenceInterval, slope + slopeConfidenceInterval)
Pitfalls
- The validity of this statistic depends on the assumption that the observations included in the model are drawn from a Bivariate Normal Distribution
function slopeStdErr
Standard error of slope estimate.
num slopeStdErr(lrel[num,num] values) throws IllegalArgument
Returns the http://www.xycoon.com/standarderrorb0.htm[standard error of the slope estimate], usually denoted s(b1).
function sumOfCrossProducts
Sum of cross products of observations.
num sumOfCrossProducts(lrel[num,num] values) throws IllegalArgument
Returns the sum of crossproducts, xᵢ*yᵢ.
function sumSquaredErrors
Sum of squared errors.
num sumSquaredErrors(lrel[num,num] values) throws IllegalArgument
Returns the sum of squared errors (SSE) associated with the regression model. The sum is computed using the computational formula
SSE = SYY - (SXY * SXY / SXX)
where SYY is the sum of the squared deviations of the y values about their mean, SXX is similarly defined and SXY is the sum of the products of x and y mean deviations.
The return value is constrained to be non-negative, i.e., if due to rounding errors the computational formula returns a negative result, 0 is returned.
function totalSumSquares
Sum of squared deviations.
num totalSumSquares(lrel[num,num] values) throws IllegalArgument
Returns the sum of squared deviations of the y values about their mean. This is defined as http://www.xycoon.com/SumOfSquares.htm[SSTO].
function XSumSquares
Sum of squared deviations of x values about their mean.
num XSumSquares(lrel[num,num] values) throws IllegalArgument
Returns the sum of squared deviations of the x values about their mean.
function predict
Predict a value.
num predict(lrel[num,num] values, num x) throws IllegalArgument
Returns the "predicted" y
value associated with the supplied x
value, based on regression model derived from the provided data values:
predict(x) = intercept + slope * x