R: Relative Importance of Predictors in a Regression Model
relimp
R Documentation
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, ...)
## S3 method for class 'relimp'
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.
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.
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.
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? JASA90,
7–18.
See Also
relrelimp
Examples
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")