| cvFolds {perry} | R Documentation |
Cross-validation folds
Description
Split observations or groups of observations into K folds to be used
for (repeated) K-fold cross-validation. K should thereby be
chosen such that all folds are of approximately equal size.
Usage
cvFolds(
n,
K = 5,
R = 1,
type = c("random", "consecutive", "interleaved"),
grouping = NULL
)
Arguments
n |
an integer giving the number of observations to be split into
folds. This is ignored if |
K |
an integer giving the number of folds into which the observations
should be split (the default is five). Setting |
R |
an integer giving the number of replications for repeated
|
type |
a character string specifying the type of folds to be
generated. Possible values are |
grouping |
a factor specifying groups of observations. If supplied, the data are split according to the groups rather than individual observations such that all observations within a group belong to the same fold. |
Value
An object of class "cvFolds" with the following components:
nan integer giving the number of observations or groups.
Kan integer giving the number of folds.
Ran integer giving the number of replications.
subsetsan integer matrix in which each column contains a permutation of the indices of the observations or groups.
whichan integer vector giving the fold for each permuted observation or group.
groupinga list giving the indices of the observations belonging to each group. This is only returned if a grouping factor has been supplied.
Note
This is a simple wrapper function for perrySplits with a
control object generated by foldControl.
Author(s)
Andreas Alfons
See Also
perrySplits, foldControl,
randomSplits, bootSamples
Examples
set.seed(1234) # set seed for reproducibility
cvFolds(20, K = 5, type = "random")
cvFolds(20, K = 5, type = "consecutive")
cvFolds(20, K = 5, type = "interleaved")
cvFolds(20, K = 5, R = 10)