Learn R Programming

ncvreg (version 3.4-0)

plot.cv.ncvreg: Plots the cross-validation curve from a "cv.ncvreg" object

Description

Plots the cross-validation curve from a "cv.ncvreg" object, along with standard error bars.

Usage

## S3 method for class 'cv.ncvreg':
plot(x, log.l=TRUE, type=c("cve", "rsq", "scale",
"snr", "pred", "all"), selected=TRUE, vertical.line=TRUE, col="red",
...)

Arguments

x
A "cv.ncvreg" object.
log.l
Should horizontal axis be on the log scale? Default is TRUE.
type
What to plot on the vertical axis. cve plots the cross-validation error (deviance); rsq plots an estimate of the fraction of the deviance explained by the model (R-squared); snr plots an estimate of the
selected
If TRUE (the default), places an axis on top of the plot denoting the number of variables in the model (i.e., that have a nonzero regression coefficient) at that value of lambda.
vertical.line
If TRUE (the default), draws a vertical line at the value where cross-validaton error is minimized.
col
Controls the color of the dots (CV estimates).
...
Other graphical parameters to plot

Details

Error bars representing approximate 68% confidence intervals are plotted along with the estimates at value of lambda. For rsq and snr, these confidence intervals are quite crude, especially near zero, and will hopefully be improved upon in later versions of ncvreg.

References

Breheny, P. and Huang, J. (2011) Coordinate descent algorithms for nonconvex penalized regression, with applications to biological feature selection. Ann. Appl. Statist., 5: 232-253.

See Also

ncvreg, cv.ncvreg

Examples

Run this code
## Linear regression
data(prostate)
X <- as.matrix(prostate[,1:8])
y <- prostate$lpsa
cvfit <- cv.ncvreg(X, y)
plot(cvfit)
par(mfrow=c(2,2))
plot(cvfit, type="all")

## Logistic regression
data(heart)
X <- as.matrix(heart[,1:9])
y <- heart$chd
cvfit <- cv.ncvreg(X, y, family="binomial")
plot(cvfit)
par(mfrow=c(2,2))
plot(cvfit, type="all")

Run the code above in your browser using DataLab