Projection Predictive Feature Selection

Performs projection predictive feature selection for generalized linear models and generalized linear and additive multilevel models (see, Piironen, Paasiniemi and Vehtari, 2020, <>, Catalina, Bürkner and Vehtari, 2020, ). The package is compatible with the 'rstanarm' and 'brms' packages, but other reference models can also be used. See the package vignette for more information and examples.



projpred 1.1.1

This version contains only a few patches, no new features to the user.

projpred 1.1.0

New features

  • Added support for brms models.

Bug fixes

  • The program crashed with rstanarm models fitted with syntax like stan_glm(log(y) ~ log(x), ...), that is, it did not allow transformation for y.

projpred 1.0.0

New features and improvements

  • Changed the internals so that now all fit objects (such as rstanarm fits) are converted to refmodel-objects using the generict get_refmodel-function, and all the functions use only this object. This makes it much easier to use projpred with other reference models by writing them a new get_refmodel-function. The syntax is now changed so that varsel and cv_varsel both return an object that has similar structure always, and the reference model is stored into this object.

  • Added more examples to the vignette.

  • Added possibility to change the baseline in varsel_plot/varsel_stats. Now it is possible to compare also to the best submodel found, not only to the reference model.

  • Bug fix: RMSE was previously computed wrong, this is now fixed.

  • Small changes: nloo = n by default in cv_varsel. regul=1e-4 now by default in all functions.

projpred 0.9.0

New features and improvements

  • Added the relax argument for the main functions (varsel,cv_varsel,project and the prediction functions). Now it is possible to make predictions also with those parameter estimates that were computed during the L1-penalized search. This change also allows the user to compute the Lasso-solution by providing the observed data as the 'reference fit' for init_refmodel. An example will be added to the vignette.

Bug fixes

  • The projection with a nonzero regularization parameter value did not produce exactly correct result, although the difference to the correct result was often so small that user would not see the difference. Fixed this.

projpred 0.8.0 and earlier

Until this version, we did not keep record of the changes between different versions. Started to do this from version 0.9.0 onwards.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


2.0.2 by Alejandro Catalina, 6 months ago,

Report a bug at

Browse source code at

Authors: Juho Piironen [aut] , Markus Paasiniemi [aut] , Alejandro Catalina [cre, aut] , Aki Vehtari [aut] , Jonah Gabry [ctb] , Marco Colombo [ctb] , Paul-Christian Bürkner [ctb]

Documentation:   PDF Manual  

GPL-3 license

Imports methods, dplyr, loo, rstantools, lme4, optimx, ggplot2, Rcpp, utils, rngtools, tidyverse, MASS, magrittr, mgcv, gamm4

Suggests rstanarm, brms, testthat, knitr, rmarkdown, glmnet, bayesplot

Linking to Rcpp, RcppArmadillo

Imported by brms.

Suggested by parameters.

See at CRAN