R: Elastic net model paths for some generalized linear models

glmnet-package {glmnet} | R Documentation

## Elastic net model paths for some generalized linear models

### Description

This package fits lasso and elastic-net model paths for regression, logistic and multinomial regression using coordinate descent. The algorithm is extremely fast, and exploits sparsity in the input x matrix where it exists. A variety of predictions can be made from the fitted models.

### Details

Package: | glmnet
Type: | Package
Version: | 1.0
Date: | 2008-05-14
License: | What license is it under?

Very simple to use. Accepts `x,y` data for regression models, and produces the regularization path over a grid of values for the tuning parameter `lambda`. Only 5 functions: `glmnet`
`predict.glmnet`
`plot.glmnet`
`print.glmnet`
`coef.glmnet`

### Author(s)

Jerome Friedman, Trevor Hastie and Rob Tibshirani
Maintainer: Trevor Hastie hastie@stanford.edu

### References

Friedman, J., Hastie, T. and Tibshirani, R. (2008) Regularization Paths for Generalized Linear Models via Coordinate Descent, https://web.stanford.edu/~hastie/Papers/glmnet.pdf
Journal of Statistical Software, Vol. 33(1), 1-22 Feb 2010
https://www.jstatsoft.org/v33/i01/
Simon, N., Friedman, J., Hastie, T., Tibshirani, R. (2011) Regularization Paths for Cox's Proportional Hazards Model via Coordinate Descent, Journal of Statistical Software, Vol. 39(5) 1-13
https://www.jstatsoft.org/v39/i05/
Tibshirani, Robert., Bien, J., Friedman, J.,Hastie, T.,Simon, N.,Taylor, J. and Tibshirani, Ryan. (2012) Strong Rules for Discarding Predictors in Lasso-type Problems, JRSSB, vol 74,
https://statweb.stanford.edu/~tibs/ftp/strong.pdf
Glmnet webpage with four vignettes https://glmnet.stanford.edu

### Examples

    x = matrix(rnorm(100 * 20), 100, 20)
    y = rnorm(100)
    g2 = sample(1:2, 100, replace = TRUE)
    g4 = sample(1:4, 100, replace = TRUE)
    fit1 = glmnet(x, y)
    predict(fit1, newx = x[1:5, ], s = c(0.01, 0.005))
    predict(fit1, type = "coef")
    plot(fit1, xvar = "lambda")
    fit2 = glmnet(x, g2, family = "binomial")
    predict(fit2, type = "response", newx = x[2:5, ])
    predict(fit2, type = "nonzero")
    fit3 = glmnet(x, g4, family = "multinomial")
    predict(fit3, newx = x[1:3, ], type = "response", s = 0.01)

[Package glmnet version 4.1-2 Index]