Learn R Programming

hdsvm (version 1.0.2)

coef.hdsvm: Extract Model Coefficients from a `hdsvm` Object

Description

Retrieves the coefficients at specified values of `lambda` from a fitted `hdsvm()` model.

Usage

# S3 method for hdsvm
coef(object, s = NULL, type = c("coefficients", "nonzero"), ...)

Value

Returns a matrix or vector of coefficients corresponding to the specified `lambda` values.

Arguments

object

Fitted `hdsvm()` object.

s

Values of the penalty parameter `lambda` for which coefficients are requested. Defaults to the entire sequence used during the model fit.

type

Type of prediction required. Type `"coefficients"` computes the coefficients at the requested values for `s`. Type `"nonzero"` returns a list of the indices of the nonzero coefficients for each value of s.

...

Not used.

Details

This function extracts coefficients for specified `lambda` values from a `hdsvm()` object. If `s`, the vector of `lambda` values, contains values not originally used in the model fitting, the `coef` function employs linear interpolation between the closest `lambda` values from the original sequence to estimate coefficients at the new `lambda` values.

See Also

hdsvm, predict.hdsvm

Examples

Run this code
set.seed(315)
n <- 100
p <- 400
x1 <- matrix(rnorm(n / 2 * p, -0.25, 0.1), n / 2)
x2 <- matrix(rnorm(n / 2 * p, 0.25, 0.1), n / 2)
x <- rbind(x1, x2)
beta <- 0.1 * rnorm(p)
prob <- plogis(c(x %*% beta))
y <- 2 * rbinom(n, 1, prob) - 1
lam2 <- 0.01
fit <- hdsvm(x, y, lam2=lam2)
coefs <- coef(fit, s = fit$lambda[3:5])

Run the code above in your browser using DataLab