# plot.cvpen: Plot method for cross validated error of a 'quadrupen' model In quadrupen: Sparsity by Worst-Case Quadratic Penalties

## Description

Produce a plot of the cross validated error of a `quadrupen` model.

## Usage

 ```1 2``` ```\S4method{plot}{cvpen}(x, y, log.scale=TRUE, reverse=FALSE, plot=TRUE, main = "Cross-validation error", ...) ```

## Arguments

 `x` output of a `crossval` run (must be of class `cvpen`). `y` used for S4 compatibility. `log.scale` logical; indicates if a log-scale should be used when `xvar="lambda"`. Ignored for 2D cross-validation plot. `reverse` logical; should the X-axis by reversed when `xvar=lambda`? Default is FALSE. Ignored for 2D cross-validation plot. `plot` logical; indicates if the graph should be plotted. Default is `TRUE`. `main` the main title, with a hopefully appropriate default definition. `...` used for S4 compatibility.

## Value

a ggplot2 object which can be plotted via the `print` method.

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34``` ```## Simulating multivariate Gaussian with blockwise correlation ## and piecewise constant vector of parameters beta <- rep(c(0,1,0,-1,0), c(25,10,25,10,25)) cor <- 0.75 Soo <- toeplitz(cor^(0:(25-1))) ## Toeplitz correlation for irrelevant variables Sww <- matrix(cor,10,10) ## bloc correlation between active variables Sigma <- bdiag(Soo,Sww,Soo,Sww,Soo) + 0.1 diag(Sigma) <- 1 n <- 100 x <- as.matrix(matrix(rnorm(95*n),n,95) %*% chol(Sigma)) y <- 10 + x %*% beta + rnorm(n,0,10) ## Use fewer lambda1 values by overwritting the default parameters ## and cross-validate over the sequences lambda1 and lambda2 cv.double <- crossval(x,y, lambda2=10^seq(2,-2,len=50), nlambda1=50) ## Rerun simple cross-validation with the appropriate lambda2 cv.10K <- crossval(x,y, lambda2=.2) ## Try leave one out also cv.loo <- crossval(x,y, K=n, lambda2=0.2) plot(cv.double) plot(cv.10K) plot(cv.loo) ## Performance for selection purpose beta.min.10K <- slot(cv.10K, "beta.min") beta.min.loo <- slot(cv.loo, "beta.min") cat("\nFalse positives with the minimal 10-CV choice: ", sum(sign(beta) != sign(beta.min.10K))) cat("\nFalse positives with the minimal LOO-CV choice: ", sum(sign(beta) != sign(beta.min.loo))) ```

quadrupen documentation built on Nov. 18, 2020, 9:06 a.m.