Split data into testing and training sets for cross-validation.

splitData(data.source, ratio, return.rows = FALSE)

Arguments

data.source

Data frame or matrix of input data to be split.

ratio

If greater than one, number of folds to split data into. Otherwise, proportion of rows in training data. See Value.

return.rows

If TRUE, row numbers of testing and training data are also returned.

Value

A list containing the input data, split into testing and training sets. If ratio is greater than one, returns a list with ratio entries, each with 1/ratio of the input data in the testing set (data.out) and the rest in the training set (data.in). Otherwise, returns a list with one split of the data, with ratio of the input data in the testing set and the rest in the training set.

Examples

if (FALSE) { n <- 30 ratio <- 2/3 data.source <- data.frame(value=1:n) out <- splitData(data.source, ratio) }