Learn R Programming

EBEN (version 4.6)

EBelasticNet.Binomial: The EB Elastic Net Algorithm for Binomial Model with Normal-Gamma(NG) Prior Distribution

Description

Generalized linear regression, normal-Gxponential (NG) hierarchical prior for regression coefficients

Usage

EBelasticNet.Binomial(BASIS, Target, lambda, alpha,Epis = "no",verbose = 0)

Arguments

BASIS
sample matrix; rows correspond to samples, columns correspond to features
Target
Class label of each individual, TAKES VALUES OF 0 OR 1
lambda
Hyperparameter controls degree of shrinkage; can be obtained via Cross Validation; lambda>0
alpha
Hyperparameter controls degree of shrinkage; can be obtained via Cross Validation; 0
Epis
"yes" or "no" for including two-way interactions
verbose
0 or 1; 1: display message; 0 no message

Value

weight
the none-zero regression coefficients: col1,col2 are the indices of the bases(main if equal); col3: coefficent value; col4: posterior variance; col5: t-value; col6: p-value
logLikelihood
log likelihood from the final regression coefficients
WaldScore
Wald Score
Intercept
Intercept
lambda
the hyperparameter; same as input lambda
alpha
the hyperparameter; same as input alpha

Details

If Epis="yes", the program adds two-way interaction of K*(K-1)/2 more columns to BASIS

References

Huang A, Xu S, Cai X: Empirical Bayesian LASSO-logistic regression for multiple binary trait locus mapping. BMC genetics 2013, 14(1):5.

Examples

Run this code
library(EBEN)
data(BASISbinomial)
data(yBinomial)
#reduce sample size to speed up the running time
n = 50;
k = 100;
N = length(yBinomial);
set  = sample(N,n);
BASIS = BASISbinomial[set,1:k];
y  = yBinomial[set];
output = EBelasticNet.Binomial(BASIS, y,lambda = 0.1,alpha = 0.5, Epis = "no",verbose = 5)

Run the code above in your browser using DataLab