summary.dglars: Summaryzing dgLARS Fits

View source: R/summary.dglars.R

summary.dglarsR Documentation

Summaryzing dgLARS Fits

Description

Summary method for an object with class 'dglars'.

Usage

## S3 method for class 'dglars'
summary(object, type = c("AIC", "BIC"), 
digits = max(3, getOption("digits") - 3), ...)

Arguments

object

fitted dglars object.

type

a description of the used measure of goodness-of-fit, i.e., the Akaike Information Criterion (type = "AIC") or the Bayesian Information Criterion (type = "BIC"). See below for the description of how to define more general measures of goodness-of-fit.

digits

significant digits in printout.

...

additional arguments passed to “AIC.dglars” or “BIC.dglars”. See below for more details.

Details

summary.dglars gives information about the sequence of models estimtaed by dgLARS method.

To select the best fitted model, summary method uses a measure of goodness-of-fit (GoF) defined as follows:

-2 \mbox{log-likelihood} + k \mbox{comp},

where “comp” represents the term used to measure the complexity of the fitted models, and k is the 'weight' of the complexity in the previous formula. This quantity is computed using the functions “AIC.dglars” or “BIC.dglars”.

By default, summary.dglars function computes the AIC criterion, but the user can use “dots” to pass to the function AIC.dglars the additional arguments needed to compute a more general measure of goodness-of-fit, i.e, “g”, “phi”, “k” and “complexity” (see “AIC.dglars” for the description of these arguments). Below we give some examples on how to use these additional arguments.

The output of the summary method is divided in two sections.

The first section shows the call that produced object followed by a data.frame. The column named “Sequence” gives information on how is changed the active set along the path. The column “g” shows the sequence of the \gamma-values used to compute the solution curve, while the column “%Dev” shows the the fraction of explained deviance. The remaining columns show the complexity measure, the used measure of goodness-of-fit and the corresponding ranking of the fitted models.

The second section shows the details of the selected model, i.e. family and link function used to specify the generalized linear model, the penalized estimate of the coefficient vector, the value of the tuning parameter, the null and residual deviance, and finaly the value of the used measure of goodness-of-fit. Information about the method and the algorithm used to compute the solution curve is also provided.

Value

summary.dglars function silently returns a named list with components:

table

a data.frame with the information about the sequence of model fitted by dglars function;

formula.gof

if the model is specified by the formula in dglars, then the formula of the selected model is reported;

b.gof

the estimates of the coefficients of the selected model;

phi.gof

the estimate of the dispersion parameter of the selected model;

nulldev

the null residual deviance;

resdev.gof

the residual deviance of the selected model;

type

a description of the measure of goodness-of-fit used to select the model;

k

the ‘weight’ used to compute the measure of goodness-of-fit;

complexity

a description of the method used to measure the complexity of the fitted models;

phi

a description of the method used the estimate the dispersion parameter.

Author(s)

Luigi Augugliaro and Hassan Pazira
Maintainer: Luigi Augugliaro luigi.augugliaro@unipa.it

See Also

dglars, AIC.dglars, BIC.dglars and gdf functions.

Examples

###########################
# Logistic regression model
set.seed(123)
n <- 100
p <- 10
X <- matrix(rnorm(n*p), n, p)
b <- 1:2
eta <- b[1] + X[, 1] * b[2]
mu <- binomial()$linkinv(eta)
y <- rbinom(n, 1, mu)
fit <- dglars(y ~ X, family = binomial)

summary(fit, type = "AIC")
summary(fit, type = "AIC", k = 0.1)
summary(fit, type = "AIC", complexity = "gdf")
summary(fit, type = "BIC", complexity = "df")
summary(fit, type = "BIC", complexity = "gdf")

############################
# y ~ Gamma
n <- 100
p <- 10
X <- matrix(abs(rnorm(n * p)), n, p)
eta <- 1 + 2 * X[, 1]
mu <- drop(Gamma()$linkinv(eta))
shape <- 0.5
phi <- 1 / shape
y <- rgamma(n, scale = mu / shape, shape = shape)
fit <- dglars(y ~ X, Gamma("log"))

summary(fit, phi = "pearson")
summary(fit, phi = "deviance")
summary(fit, phi = "mle")

dglars documentation built on Oct. 10, 2023, 1:08 a.m.