glmnet v4.0-2


Monthly downloads



Lasso and Elastic-Net Regularized Generalized Linear Models

Extremely efficient procedures for fitting the entire lasso or elastic-net regularization path for linear regression, logistic and multinomial regression models, Poisson regression, Cox model, multiple-response Gaussian, and the grouped multinomial regression. There are two new and important additions. The family argument can be a GLM family object, which opens the door to any programmed family. This comes with a modest computational cost, so when the built-in families suffice, they should be used instead. The other novelty is the relax option, which refits each of the active sets in the path unpenalized. The algorithm uses cyclical coordinate descent in a path-wise fashion, as described in the papers listed in the URL below.


Lasso and Elastic-Net Regularized Generalized Linear Models


We provide extremely efficient procedures for fitting the entire lasso or elastic-net regularization path for linear regression (gaussian), multi-task gaussian, logistic and multinomial regression models (grouped or not), Poisson regression and the Cox model. The algorithm uses cyclical coordinate descent in a path-wise fashion. Details may be found in Friedman, Hastie, and Tibshirani (2010), Simon et al. (2011), Tibshirani et al. (2012), Simon, Friedman, and Hastie (2013).

Version 3.0 is a major release with several new features, including:

  • Relaxed fitting to allow models in the path to be refit without regularization. CV will select from these, or from specified mixtures of the relaxed fit and the regular fit;
  • Progress bar to monitor computation;
  • Assessment functions for displaying performance of models on test data. These include all the measures available via cv.glmnet, as well as confusion matrices and ROC plots for classification models;
  • print methods for CV output;
  • Functions for building the x input matrix for glmnet that allow for one-hot-encoding of factor variables, appropriate treatment of missing values, and an option to create a sparse matrix if appropriate.
  • A function for fitting unpenalized a single version of any of the GLMs of glmnet.

Version 4.0 is a major release that allows for any GLM family, besides the built-in families.


Friedman, Jerome, Trevor Hastie, and Rob Tibshirani. 2010. “Regularization Paths for Generalized Linear Models via Coordinate Descent.” Journal of Statistical Software, Articles 33 (1): 1–22.
Simon, Noah, Jerome Friedman, and Trevor Hastie. 2013. “A Blockwise Descent Algorithm for Group-Penalized Multiresponse and Multinomial Regression.”
Simon, Noah, Jerome Friedman, Trevor Hastie, and Rob Tibshirani. 2011. “Regularization Paths for Cox’s Proportional Hazards Model via Coordinate Descent.” Journal of Statistical Software, Articles 39 (5): 1–13.
Tibshirani, Robert, Jacob Bien, Jerome Friedman, Trevor Hastie, Noah Simon, Jonathan Taylor, and Ryan J. Tibshirani. 2012. “Strong Rules for Discarding Predictors in Lasso-Type Problems.” Journal of the Royal Statistical Society: Series B (Statistical Methodology) 74 (2): 245–66.

Functions in glmnet

Name Description Solve weighted least squares (WLS) problem for a single lambda value
Cindex compute C index for a Cox model
dev_function Elastic net deviance value
assess.glmnet assess performance of a 'glmnet' object using test data.
deviance.glmnet Extract the deviance from a glmnet object
coxgrad compute gradient for cox model Fit a GLM with elastic net regularization for a single value of lambda
get_start Get null deviance, starting mu and lambda max
get_eta Helper function to get etas (linear predictions)
cv.glmnet Cross-validation for glmnet
glmnet.path Fit a GLM with elastic net regularization for a path of lambda values
glmnet-internal Internal glmnet functions
glmnet fit a GLM with lasso or elasticnet regularization
glmnet-package Elastic net model paths for some generalized linear models
predict.glmnetfit Get predictions from a glmnetfit fit object print a cross-validated glmnet object
glmnet.control internal glmnet parameters
glmnet.measures Display the names of the measures used in CV for different "glmnet" families make predictions from a "cv.glmnet" object.
print.glmnet print a glmnet object
pen_function Elastic net penalty value
coef.glmnet Extract coefficients from a glmnet object
plot.glmnet plot coefficients from a "glmnet" object
makeX convert a data frame to a data matrix with one-hot encoding
rmult Generate multinomial samples from a probability matrix
na.replace Replace the missing entries in a matrix columnwise with the entries in a supplied vector plot the cross-validation curve produced by cv.glmnet
obj_function Elastic net objective function value
coxnet.deviance compute deviance for cox model output
bigGlm fit a glm with all the options in glmnet
beta_CVX Simulated data for the glmnet vignette
No Results!

Vignettes of glmnet

No Results!

Last month downloads


Type Package
Date 2020-6-13
License GPL-2
VignetteBuilder knitr
Encoding UTF-8
RoxygenNote 7.1.0
NeedsCompilation yes
Packaged 2020-06-14 23:21:58 UTC; hastie
Repository CRAN
Date/Publication 2020-06-16 00:00:02 UTC

Include our badge in your README