Learn R Programming

GGMridge (version 1.4)

lambda.pcut.cv: Choose the Tuning Parameter of the Ridge Inverse and Thresholding Level of the Empirical p-Values

Description

Choose the tuning parameter of the ridge inverse and p-value cutoff by minimizing cross validation estimates of the total prediction errors of the p separate ridge regressions.

Usage

lambda.pcut.cv(x, lambda, pcut, fold = 10L)

Value

The total prediction errors for all lambda (row-wise) and pcut (column-wise)

Arguments

x

n by p data matrix.

lambda

A vector of candidate tuning parameters.

pcut

A vector of candidate cutoffs of pvalues.

fold

fold-cross validation is performed.

Author

Min Jin Ha

References

Ha, M. J. and Sun, W. (2014). Partial correlation matrix estimation using ridge penalty followed by thresholding and re-estimation. Biometrics, 70, 762--770.

Examples

Run this code
 p <- 100 # number of variables
 n <- 50 # sample size
 
 ###############################
 # Simulate data
 ###############################
 simulation <- simulateData(G = p, etaA = 0.02, n = n, r = 1)
 data <- simulation$data[[1L]]
 stddata <- scale(x = data, center = TRUE, scale = TRUE)
 
 ###############################
 # Selection of a lambda and a 
 # p-value cutoff
 ###############################
 lambda.array <- seq(from = 0.1, to = 5, length = 10) * (n-1.0)
 pcut.array <- seq(from = 0.01, to = 0.05, by = 0.01)
 tpe <- lambda.pcut.cv(x = stddata,
                       lambda = lambda.array,
                       pcut = pcut.array,
                       fold = 3L)
 w.mintpe <- which(tpe == min(tpe), arr.ind = TRUE)
 lambda <- lambda.array[w.mintpe[1L]]
 alpha <- pcut.array[w.mintpe[2L]]
 

Run the code above in your browser using DataLab