MuMIn (version 1.43.6)

model.sel: model selection table


Build a model selection table.


model.sel(object, ...)

# S3 method for default model.sel(object, ..., rank = NULL, rank.args = NULL, beta = c("none", "sd", ""), extra) # S3 method for model.selection model.sel(object, rank = NULL, rank.args = NULL, fit = NA, ..., beta = c("none", "sd", ""), extra)



a fitted model object, a list of such objects, or a "model.selection" object.

more fitted model objects.


optional, custom rank function (returning an information criterion) to use instead of the default AICc, e.g. QAIC or BIC, may be omitted if object is a model list returned by get.models.


optional list of arguments for the rank function. If one is an expression, an x within it is substituted with a current model.


logical, stating whether the model objects should be re-fitted if they are not stored in the "model.selection" object. Set to NA to re-fit the models only if this is needed. See ‘Details’.


indicates whether and how the component models' coefficients should be standardized. See the argument's description in dredge.


optional additional statistics to include in the result, provided as functions, function names or a list of such (best if named or quoted). See dredge for details.


An object of class c("model.selection", "data.frame"), being a data.frame, where each row represents one model and columns contain useful information about each model: the coefficients, df, log-likelihood, the value of the information criterion used, <U+0394>_IC and ‘Akaike weight’. If any arguments differ between the modelling function calls, the result will include additional columns showing them (except for formulas and some other arguments).

See model.selection.object for its structure.


model.sel used with "model.selection" object will re-fit model objects, unless they are stored in object (in attribute "modelList"), if argument extra is provided, or the requested beta is different than object's "beta" attribute, or the new rank function cannot be applied directly to logLik objects, or new rank.args are given (unless argument fit = FALSE).

See Also

dredge, AICc, list of supported models.

Possible alternatives: ICtab (in package bbmle), or aictab (AICcmodavg).


Run this code
Cement$X1 <- cut(Cement$X1, 3)
Cement$X2 <- cut(Cement$X2, 2)

fm1 <- glm(formula = y ~ X1 + X2 * X3, data = Cement)
fm2 <- update(fm1, . ~ . - X1 - X2)
fm3 <- update(fm1, . ~ . - X2 - X3)

## ranked with AICc by default
(msAICc <- model.sel(fm1, fm2, fm3))

## ranked with BIC
model.sel(fm1, fm2, fm3, rank = AIC, rank.args = alist(k = log(nobs(x))))
# or
# model.sel(msAICc, rank = AIC, rank.args = alist(k = log(nobs(x))))
# or
# update(msAICc, rank = AIC, rank.args = alist(k = log(nobs(x))))

# }

Run the code above in your browser using DataLab