Update deprecated syntax for future rstan compatibility (thanks to Andrew Johnson for the patch).
hsstan 0.8.1 (16 September 2021)
Smaller Changes and Bug Fixes
Fix bug in projsel() if the number of observations in the dataset is smaller than both the number of available predictors and the maximum number of iterations in the selection procedure.
Add workaround for rstantools issue #77 to make the base models run again correctly with the compilation changes introduced in rstan 2.21.
Add RcppParallel to Imports and LinkingTo, as future versions of rstan require to link to the Intel TBB library.
Improve validation of scalar inputs.
hsstan 0.8 (29 June 2020)
Major Changes
Add the sub.idx option toposterior_performance() to select the observations to be used in the computation of the performance measures.
Add the start.from option to run projsel()to start the selection procedure from a submodel different from the set of unpenalized covariates.
Allow interaction terms in the formula for unpenalized covariates.
Speed up matrix multiplications in posterior_linpred()and projsel(): this also benefits all other functions that use posterior_linpred(), such as log_lik(),posterior_predict(), posterior_performance()and others.
Smaller Changes and Bug Fixes
Fix parallelized loop boundaries inposterior_performance() for Windows.
Speed up posterior_performance() for gaussian models.
Handle correctly the case in which a variable is mentioned both among the unpenalized covariates and the penalized predictors.
Fix bug in handling of a factor variable with multiple levels in the set of penalized predictors.
Use the correct sigma term in the computation of the elpd for gaussian models.
Allow running projsel() on models with no penalized predictors.
Notes
This version was used in:
M. Colombo, A. Asadi Shehni, I. Thoma et al., Quantitative levels of serum N-glycans in type 1 diabetes and their association with kidney disease, Glycobiology(2021) 31 (5): 613-623.
hsstan 0.7 (1 May 2020)
Major Changes
Speed up all models up to 4-5 times by using Stan’snormal_id_glm() andbernoulli_logit_glm().
Use a simpler parametrization of the regularized horseshoe prior.
Smaller Changes and Bug Fixes
Allow using the iter and warmup options inkfold().
Switch to rstantools 2.0.0.
Fix bug in the use of the slab.scale parameter ofhsstan(), as it was not squared in the computation of the slab component of the regularized horseshoe prior. The default value of 2 in the current version corresponds to using the value 4 in versions 0.6 and earlier.
hsstan 0.6 (14 September 2019)
Major Changes
First version to be available on CRAN.
Add the kfold() and posterior_summary()functions.
Implement parallelization on Windows usingparallel::parLapply().
Remove the deprecated sample.stan() andsample.stan.cv().
Add options to plot.projsel() for choosing the number of points to plot and whether to show a point for the null model.
Smaller Changes and Bug Fixes
Cap to 4 the number of cores used by default when loading the package.
Don’t change an already set mc.cores option when loading the package.
Drop the internal horseshoe parameters from the stanfit object by default.
Speed up the parallel loops in the projection methods.
Evaluate the full model in projsel() only if selection stopped early.
Rename the max.num.pred argument ofprojsel() to max.iters.
Validate the options passed to rstan::sampling().
Expand the documentation and add examples.
Notes
This version was used in:
M. Colombo, S.J. McGurnaghan, L.A.K. Blackbourn et al., Comparison of serum and urinary biomarker panels with albumin creatinin ratio in the prediction of renal function decline in type 1 diabetes, Diabetologia(2020) 63 (4): 788-798.
hsstan 0.5 (11 August 2019)
Major Changes
Update the interface of hsstan().
Don’t standardize the data inside hsstan().
Implement the thin QR decomposition and use it by default.
Replace uses of foreach()/%dopar% withparallel::mclapply().
Add the posterior_interval(),posterior_linpred(), posterior_predict()log_lik(), bayes_R2(), loo_R2()and waic() functions.
Change the folds format from a list of indices to a vector of fold numbers.
Smaller Changes and Bug Fixes
Add the nsamples() and sampler.stats()functions.
Use crossprod()/tcrossprod() instead of matrix multiplications.
Don’t return the posterior mean of sigma in the hsstan object.
Store covariates and biomarkers in the hsstan object.
Remove option for using variational Bayes.
Add option to control the number of Markov chains run.
Fix computation of fitted values for logistic regression.
Fix two errors in the computation of the elpd infit.submodel().
Store the original data in the hsstan object.
Use log_lik() instead of computing and storing the log-likelihood in Stan.
Allow the use of regular expressions for pars insummary.hsstan().
hsstan 0.4 (24 July 2019)
Major Changes
Merge sample.stan() and sample.stan.cv()into hsstan().
Implement the regularized horseshoe prior.
Add a loo() method for hsstan objects.
Change the default adapt.delta argument for base models from 0.99 to 0.95.
Decrease the default scale.u from 20 to 2.
Smaller Changes and Bug Fixes
Add option to set the seed of the random number generator.
Add computation of log-likelihoods in the generated quantities.
Use scale() to standardize the data insample.stan.cv().
Remove the standardize option so that data is always standardized.
Remove option to create a png file fromplot.projsel().
Make get.cv.performance() work also on a non-cross-validated hsstan object.
Add print() and summary() functions for hsstan objects.
Add options for horizontal and vertical label adjustment inplot.projsel().
hsstan 0.3 (4 July 2019)
Major Changes
Add option to set the adapt_delta parameter and change the default for all models from 0.95 to 0.99.
Allow to control the prior scale for the unpenalized variables.
Smaller Changes and Bug Fixes
Add option to control the number of iterations.
Compute the elpd instead of the mlpd in the projection.
Fix bug in the assignment of readable variable names.
Don’t compute the predicted outcome in the generated quantities block.
hsstan 0.2 (13 November 2018)
Major Changes
Switch to doParallel since doMC is not packaged for Windows.
Smaller Changes and Bug Fixes
Enforce the direction when computing the AUC.
Check that there are no missing values in the design matrix.
Remove code to disable clipping of text labels fromplot.projsel().