Learn R Programming

AICcmodavg (version 2.00)

importance: Compute Importance Values of Variable

Description

This function calculates the relative importance of variables (w+) based on the sum of Akaike weights (model probabilities) of the models that include the variable. Note that this measure of evidence is only appropriate when the variable appears in the same number of models as those that do not include the variable.

Usage

importance(cand.set, parm, modnames = NULL, second.ord = TRUE,
           nobs = NULL, ...)

## S3 method for class 'AICaov.lm': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICsclm.clm': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICclmm': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICclogit.coxph': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICcoxme': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICcoxph': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICglm.lm': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, ...)

## S3 method for class 'AICglmerMod': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICgls': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AIClm': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AIClme': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AIClmekin': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICmaxlikeFit.list': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, ...)

## S3 method for class 'AICmer': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICmultinom.nnet': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, ...)

## S3 method for class 'AICnlmerMod': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICpolr': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICrlm.lm': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

## S3 method for class 'AICunmarkedFitColExt': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitOccu': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitOccuFP': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitOccuRN': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitPCount': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitPCO': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitDS': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitGDS': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitMPois': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICunmarkedFitGMM': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, parm.type = NULL, ...)

## S3 method for class 'AICvglm': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, c.hat = 1, ...)

## S3 method for class 'AICzeroinfl': importance(cand.set, parm, modnames = NULL, second.ord = TRUE, nobs = NULL, ...)

Arguments

cand.set
a list storing each of the models in the candidate model set.
parm
the parameter of interest for which a measure of relative importance is required.
modnames
a character vector of model names to facilitate the identification of each model in the model selection table. If NULL, the function uses the names in the cand.set list of candidate models. If no names appear in the list, generic names (e.g.
second.ord
logical. If TRUE, the function returns the second-order Akaike information criterion (i.e., AICc).
nobs
this argument allows to specify a numeric value other than total sample size to compute the AICc (i.e., nobs defaults to total number of observations). This is relevant only for mixed models or various models of unmarkedFit clas
c.hat
value of overdispersion parameter (i.e., variance inflation factor) such as that obtained from c_hat. Note that values of c.hat different from 1 are only appropriate for binomial GLM's with trials > 1 (i.e., success/trial
parm.type
this argument specifies the parameter type on which the effect size will be computed and is only relevant for models of unmarkedFitOccu, unmarkedFitColExt, unmarkedFitOccuFP, unmarkedFitOccuRN,
...
additional arguments passed to the function.

Value

  • importance returns an object of class importance consisting of the following components:
  • parmthe parameter for which an importance value is required.
  • w.plusthe parameter for which an importance value is required.
  • w.minusthe sum of Akaike weights for the models that exclude the parameter of interest

References

Burnham, K. P., and Anderson, D. R. (2002) Model Selection and Multimodel Inference: a practical information-theoretic approach. Second edition. Springer: New York.

MacKenzie, D. I., Nichols, J. D., Lachman, G. B., Droege, S., Royle, J. A., Langtimm, C. A. (2002) Estimating site occupancy rates when detection probabilities are less than one. Ecology 83, 2248--2255.

See Also

AICc, aictab, c_hat, confset, evidence, modavg, modavgShrink, modavgPred

Examples

Run this code
##example on Orthodont data set in nlme
require(nlme)

##set up candidate model list
Cand.models <- list( )
Cand.models[[1]] <- lme(distance ~ age, data = Orthodont, method = "ML")
##random is ~ age | Subject
Cand.models[[2]] <- lme(distance ~ age + Sex, data = Orthodont,
                        random = ~ 1, method = "ML")
Cand.models[[3]] <- lme(distance ~ 1, data = Orthodont, random = ~ 1,
                        method = "ML") 
Cand.models[[4]] <- lme(distance ~ Sex, data = Orthodont, random = ~ 1,
                        method = "ML") 

##create a vector of model names
Modnames <- paste("mod", 1:length(Cand.models), sep = "")

importance(cand.set = Cand.models, parm = "age", modnames = Modnames,
           second.ord = TRUE, nobs = NULL)
##round to 4 digits after decimal point
print(importance(cand.set = Cand.models, parm = "age", modnames = Modnames,
                 second.ord = TRUE, nobs = NULL), digits = 4)



##single-season occupancy model example modified from ?occu
if(require(unmarked)) {
##single season
data(frogs)
pferUMF <- unmarkedFrameOccu(pfer.bin)
## add some fake covariates for illustration
siteCovs(pferUMF) <- data.frame(sitevar1 = rnorm(numSites(pferUMF)),
                                sitevar2 = rnorm(numSites(pferUMF))) 
     
## observation covariates are in site-major, observation-minor order
obsCovs(pferUMF) <- data.frame(obsvar1 = rnorm(numSites(pferUMF) *
                                 obsNum(pferUMF))) 

##set up candidate model set
fm1 <- occu(~ obsvar1 ~ sitevar1, pferUMF)
fm2 <- occu(~ 1 ~ sitevar1, pferUMF)
fm3 <- occu(~ obsvar1 ~ sitevar2, pferUMF)
fm4 <- occu(~ 1 ~ sitevar2, pferUMF)
Cand.mods <- list(fm1, fm2, fm3, fm4)
Modnames <- c("fm1", "fm2", "fm3", "fm4")

##compute importance value for 'sitevar1' on occupancy
importance(cand.set = Cand.mods, modnames = Modnames, parm = "sitevar1",
           parm.type = "psi")
##compute importance value for 'obsvar1' on detectability
importance(cand.set = Cand.mods, modnames = Modnames, parm = "obsvar1",
           parm.type = "detect")
detach(package:unmarked)
}

Run the code above in your browser using DataLab