Learn R Programming

Bayenet (version 0.3)

Selection: Variable selection for a Bayenet object

Description

Variable selection for a Bayenet object

Usage

Selection(obj, sparse)

Value

an object of class `Selection' is returned, which is a list with components:

method

method used for identifying important effects.

effects

a list of indicators of selected effects.

Arguments

obj

Bayenet object.

sparse

logical flag. If TRUE, spike-and-slab priors will be used to shrink coefficients of irrelevant covariates to zero exactly.

Details

For class `Sparse', the inclusion probability is used to indicate the importance of predictors. Here we use a binary indicator \(\phi\) to denote the membership of the non-spike distribution. Take the main effect of the \(j\)th genetic factor, \(X_{j}\), as an example. Suppose we have collected H posterior samples from MCMC after burn-ins. The \(j\)th G factor is included in the final model at the \(j\)th MCMC iteration if the corresponding indicator is 1, i.e., \(\phi_j^{(h)} = 1\). Subsequently, the posterior probability of retaining the \(j\)th genetic main effect in the final model is defined as the average of all the indicators for the \(j\)th G factor among the H posterior samples. That is, \(p_j = \hat{\pi} (\phi_j = 1|y) = \frac{1}{H} \sum_{h=1}^{H} \phi_j^{(h)}, \; j = 1, \dots,p.\) A larger posterior inclusion probability of \(j\)th indicates a stronger empirical evidence that the \(j\)th genetic main effect has a non-zero coefficient, i.e., a stronger association with the phenotypic trait. Here, we use 0.5 as a cutting-off point. If \(p_j > 0.5\), then the \(j\)th genetic main effect is included in the final model. Otherwise, the \(j\)th genetic main effect is excluded in the final model. For class `NonSparse', variable selection is based on 95% credible interval. Please check the references for more details about the variable selection.

References

Lu, X. and Wu, C. (2023). Bayesian quantile elastic net with spike-and-slab priors.

See Also

Bayenet

Examples

Run this code
data(dat)
max.steps=5000
fit= Bayenet(X, Y, clin, max.steps, penalty="lasso")
selected=Selection(fit,sparse=TRUE)
selected$Main.G


Run the code above in your browser using DataLab