Learn R Programming

animation (version 2.0-5)

cv.ani: Demonstration for the process of cross-validation

Description

This function uses rectangles to illustrate the $k$ folds and mark the test set and the training set with different colors.

Usage

cv.ani(x = runif(150), k = 10, col = c("green", "red", 
    "blue"), pch = c(4, 1), ...)

Arguments

x
a numerical vector which stands for the sample points.
k
an integer: how many parts should we split the data into? (comes from the $k$-fold cross-validation.)
col
a character vector of length 3 specifying the colors of: the rectangle representing the test set, the points of the test set, and points of the training set.
pch
a numeric vector of length 2 specifying the symbols of the test set and training set respectively.
...
other arguments passed to plot.default

Value

  • None (invisible NULL).

Details

Briefly speaking, the process of cross-validation is just to split the whole data set into several parts and select one part as the test set and the rest parts as the training set.

The computation of sample sizes is base on kfcv.

References

http://animation.yihui.name/dmml:k-fold_cross-validation

See Also

kfcv

Examples

Run this code
oopt = ani.options(interval = 2, nmax = 15)
cv.ani(main = "Demonstration of the k-fold Cross Validation", 
    bty = "l")

## leave-one-out CV
cv.ani(x = runif(15), k = 15)

## save the animation in HTML pages
saveHTML({
    ani.options(interval = 2)
    par(mar = c(3, 3, 1, 0.5), mgp = c(1.5, 0.5, 0), tcl = -0.3)
    cv.ani(bty = "l")
}, img.name = "cv.ani", htmlfile = "cv.ani.html", ani.height = 400, 
    ani.width = 600, title = "Demonstration of the k-fold Cross Validation", 
    description = c("This is a naive demonstration for the k-fold cross", 
        "validation. The k rectangles in the plot denote the k folds of data.", 
        "Each time a fold will be used as the test set and the rest parts", 
        "as the training set."))

ani.options(oopt)

Run the code above in your browser using DataLab