Learn R Programming

relimp (version 1.0-5)

relimp: Relative Importance of Predictors in a Regression Model

Description

Produces a summary of the relative importance of two predictors or two sets of predictors in a fitted model object.

Usage

relimp(object, set1=NULL, set2=NULL, label1="set1", label2="set2", subset=TRUE, response.cat=NULL, ...) "print"(x, digits=3, ...)

Arguments

object
A model object of class lm, glm, coxph, survreg, multinom, polr or gls
set1
An index or vector of indices for the effects to be included in the numerator of the comparison
set2
An index or vector of indices for the effects to be included in the denominator of the comparison
label1
A character string; mnemonic name for the variables in set1
label2
A character string; mnemonic name for the variables in set2
subset
Either a vector of numeric indices for the cases to be included in the standardization of effects, or a vector of logicals (TRUE for inclusion) whose length is the same as the number of rows in the model frame, object$model. The default choice is to include all cases in the model frame.
response.cat
If object is of class multinom, this is a character string used to specify which regression is of interest (i.e., the regression which predicts the log odds on response cat versus the model's reference category). The response.cat argument should be an element of object$lab; or NULL if object is not of class multinom.
...
For models of class glm, one may additionally set the dispersion parameter for the family (for example, dispersion=1.69). By default it is obtained from object. Supplying it here permits explicit allowance for over-dispersion, for example.
x
an object of class relimp
digits
The number of decimal places to be used in the printed summary. Default is 3.

Value

An object of class relimp, with at least the following components:
model
The call used to construct the model object summarized
sets
The two sets of indices specified as arguments
log.ratio
The natural logarithm of the ratio of effect standard deviations corresponding to the two sets specified
se.log.ratio
An estimated standard error for log.ratio
If dispersion was supplied as an argument, its value is stored as the dispersion component of the resultant object.

Details

If set1 and set2 both have length 1, relative importance is measured by the ratio of the two standardized coefficients. Equivalently this is the ratio of the standard deviations of the two contributions to the linear predictor, and this provides the generalization to comparing two sets rather than just a pair of predictors.

The computed ratio is the square root of the variance-ratio quantity denoted as `omega' in Silber, J H, Rosenbaum, P R and Ross, R N (1995). Estimated standard errors are calculated by the delta method, as described in that paper for example. If set1 and set2 are unspecified, and if the tcltk package has been loaded, a dialog box is provided (by a call to pickFrom) for the choice of set1 and set2 from the available model coefficients.

References

Silber, J. H., Rosenbaum, P. R. and Ross, R N (1995) Comparing the Contributions of Groups of Predictors: Which Outcomes Vary with Hospital Rather than Patient Characteristics? JASA 90, 7--18.

See Also

relrelimp

Examples

Run this code
set.seed(182)  ## an arbitrary number, just for reproducibility
x <- rnorm(100)
z <- rnorm(100)
w <- rnorm(100)
y <- 3 + (2 * x) + z + w + rnorm(100)
test <- lm(y ~ x + z + w)
print(test)
relimp(test, 2, 3)    #  compares effects of x and z
relimp(test, 2, 3:4)  #  compares effect of x with that of (z,w) combined
##
##  Data on housing and satisfaction, from Venables and Ripley
##  -- multinomial logit model
library(MASS)
library(nnet)
data(housing)
house.mult <- multinom(Sat ~ Infl + Type + Cont, weights = Freq,
  data = housing)
relimp(house.mult, set1 = 2:3, set2 = 7, response.cat = "High")

Run the code above in your browser using DataLab