SelectionRegression Class |
Namespace: Imsl.Stat
The SelectionRegression type exposes the following members.
Name | Description | |
---|---|---|
SelectionRegression |
Constructs a new SelectionRegression object.
|
Name | Description | |
---|---|---|
Compute(Double, Double) |
Computes the best multiple linear regression models.
| |
Compute(Double, Int32) |
Computes the best multiple linear regression models using a
user-supplied covariance matrix.
| |
Compute(Double, Double, Double) |
Computes the best weighted multiple linear regression models.
| |
Compute(Double, Double, Double, Double) |
Computes the best weighted multiple linear regression models using
frequencies for each observation.
| |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Name | Description | |
---|---|---|
CriterionOption |
The criterion option used to calculate the regression estimates.
| |
MaximumBestFound |
The maximum number of best regressions to be found.
| |
MaximumGoodSaved |
The maximum number of good regressions for each subset size saved.
| |
MaximumSubsetSize |
The maximum subset size if criterion is
used.
| |
Statistics |
A SummaryStatistics object.
|
Class SelectionRegression finds the best subset regressions for a regression problem with three or more independent variables. Typically, the intercept is forced into all models and is not a candidate variable. In this case, a sum-of-squares and crossproducts matrix for the independent and dependent variables corrected for the mean is computed internally. Optionally, SelectionRegression supports user-calculated sum-of-squares and crossproducts matrices; see the description of the Compute(Double, Double) method.
"Best" is defined by using one of the following three criteria:
Here, n is equal to the sum of the frequencies (or the number of rows in x if frequencies are not specified in the Compute method), and is the total sum-of-squares. k is the number of candidate or independent variables, represented as the nCandidate argument in the SelectionRegression constructor. is the error sum-of-squares in a model containing p regression parameters including (or p - 1 of the k candidate variables). Variable
is the error mean square from the model with all k variables in the model. Hocking (1972) and Draper and Smith (1981, pp. 296-302) discuss these criteria.Class SelectionRegression is based on the algorithm of Furnival and Wilson (1974). This algorithm finds the maximum number of good saved candidate regressions for each possible subset size. For more details, see method MaximumGoodSaved. These regressions are used to identify a set of best regressions. In large problems, many regressions are not computed. They may be rejected without computation based on results for other subsets; this yields an efficient technique for considering all possible regressions.
There are cases when the user may want to input the variance-covariance matrix rather than allow it to be calculated. This can be accomplished using the appropriate Compute method. Three situations in which the user may want to do this are as follows:
SelectionRegression can save considerable CPU time over explicitly computing all possible regressions. However, the function has some limitations that can cause unexpected results for users who are unaware of the limitations of the software.