Variable Selection in Generalized Linear Models
Performs variable selection in generalized linear models.
## S3 method for class 'glm' stepCriterion( model, criterion = c("bic", "aic", "adjr2", "p-value"), test = c("wald", "lrt", "score", "gradient"), direction = c("backward", "forward"), level = 0.05, verbose = TRUE, ... )
model |
an object of the class glm which is obtained from the fit of a generalized linear model. The linear predictor of the model whose fit is stored in this glm object is the more complex candidate which should be considered by the variable selection procedure. |
criterion |
an (optional) character string indicating the criterion which should be used to compare the candidate models. The available options are: AIC ("aic"), BIC ("bic"), adjusted deviance-based R-squared ("adjr2"), and p-value of the |
test |
an (optional) character string indicating the statistical test which should be used to compare nested models. The available options are: Wald ("wald"), Rao's score ("score"), likelihood ratio ("lrt") and gradient ("gradient") tests. By default, |
direction |
an (optional) character string indicating the mode of variable selection which should be used. The available options are: deleting variables ("backward") and adding variables ("forward"). By default, |
level |
an (optional) numeric value in the interval (0,1) indicating the significance level chosen to perform the F tests. This is only appropiate if |
verbose |
an (optional) logical switch indicating if should the report of results be printed. By default, |
... |
further arguments passed to or from other methods. For example, |
A list which contains the following objects:
initial
: an expression describing the linear predictor of the "initial" model.
final
: an expression describing the linear predictor of the "final" model.
criterion
: a character string describing the criterion chosen to compare the candidate models.
## Example 1 Auto <- ISLR::Auto mod <- mpg ~ cylinders + displacement + acceleration + origin + horsepower*weight fit1 <- glm(mod, family=inverse.gaussian("log"), data=Auto) stepCriterion(fit1, direction="forward", criterion="p-value", test="lrt") stepCriterion(fit1, direction="backward", criterion="adjr2") ## Example 2 burn1000 <- aplore3::burn1000 burn1000 <- within(burn1000, death <- factor(death, levels=c("Dead","Alive"))) mod2 <- death ~ age + gender + race + tbsa + inh_inj + flame + age*inh_inj + tbsa*inh_inj fit2 <- glm(mod2, family=binomial("logit"), data=burn1000) stepCriterion(fit2, direction="backward", criterion="bic") stepCriterion(fit2, direction="forward", criterion="p-value", test="score") ## Example 3 fit3 <- glm(cases ~ offset(log(population)) + city*age, family=poisson("log"), data=skincancer) stepCriterion(fit3, direction="backward", criterion="adjr2") stepCriterion(fit3, direction="forward", criterion="p-value", test="lrt")
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.