Learn R Programming

Compack (version 0.1.0)

plot.cv.FuncompCGL: Plot the cross-validation curve produced by "cv.FuncompCGL".

Description

Plot the cross-validation curve with its upper and lower standard deviation curves.

Usage

# S3 method for cv.FuncompCGL
plot(x, xlab = c("log", "-log", "lambda"), trim = FALSE, k, ...)

Arguments

x

fitted "cv.FuncompCGL" model.

xlab

what is on the X-axis, "log" plots against log(lambda) (default), "-log" against -log(lambda), and "lambda" against lambda.

trim

logical; whether to use the trimmed result. Default is FALSE.

k

a vector or character string

  • if character string, either "lam.1se" or "lam.min".

  • if it is an integer vector, specify the set of degrees of freedom k to plot.

  • if it is missing (default), cross-validation curves for k that are associated with lambda.min (blue) and lambda.1se (red) are plotted.

...

other graphical parameters.

Value

No return value. Side effect is a base R plot.

Details

A cross-validation curve is produced.

References

Sun, Z., Xu, W., Cong, X., Li G. and Chen K. (2020) Log-contrast regression with functional compositional predictors: linking preterm infant's gut microbiome trajectories to neurobehavioral outcome, https://arxiv.org/abs/1808.02403 Annals of Applied Statistics

See Also

cv.FuncompCGL and FuncompCGL, and predict and coef methods for "cv.FuncompCGL" object.

Examples

Run this code
# NOT RUN {
df_beta = 5
p = 30
beta_C_true = matrix(0, nrow = p, ncol = df_beta)
beta_C_true[1, ] <- c(-0.5, -0.5, -0.5 , -1, -1)
beta_C_true[2, ] <- c(0.8, 0.8,  0.7,  0.6,  0.6)
beta_C_true[3, ] <- c(-0.8, -0.8 , 0.4 , 1 , 1)
beta_C_true[4, ] <- c(0.5, 0.5, -0.6  ,-0.6, -0.6)
Data <- Fcomp_Model(n = 50, p = p, m = 0, intercept = TRUE,
                    SNR = 4, sigma = 3, rho_X = 0, rho_T = 0.6, df_beta = df_beta,
                    n_T = 20, obs_spar = 1, theta.add = FALSE,
                    beta_C = as.vector(t(beta_C_true)))
k_list <- 4:5
cv_m1 <-  cv.FuncompCGL(y = Data$data$y, X = Data$data$Comp,
                        Zc = Data$data$Zc, intercept = Data$data$intercept,
                        k = k_list, nfolds = 5, keep = TRUE)
plot(cv_m1)
plot(cv_m1, xlab = "-log", k = k_list)
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab