View source: R/create_timefolds.R
create_timefolds | R Documentation |
This function provides a list with in- and out-of-sample indices per fold used for time series k-fold cross-validation, see Details.
create_timefolds(y, k = 5L, use_names = TRUE, type = c("extending", "moving"))
y |
Any vector of the same length as the data intended to split. |
k |
Number of folds. |
use_names |
Should folds be named? Default is |
type |
Should in-sample data be "extending" over the folds (default) or consist of one single fold ("moving")? |
The data is first partitioned into k+1
sequential blocks B_1
to
B_{k+1}
. Each fold consists of two index vectors: one with in-sample row numbers,
the other with out-of-sample row numbers. The first fold uses B_1
as in-sample
and B_2
as out-of-sample data. The second one uses either B_2
(if type = "moving"
) or \{B_1, B_2\}
(if type = "extending"
)
as in-sample, and B_3
as out-of-sample data etc. Finally, the kth fold uses
\{B_1, ..., B_k\}
("extending") or B_k
("moving") as in-sample data,
and B_{k+1}
as out-of-sample data. This makes sure that out-of-sample data
always follows in-sample data.
A nested list with in-sample and out-of-sample indices per fold.
partition()
, create_folds()
y <- runif(100)
create_timefolds(y)
create_timefolds(y, use_names = FALSE)
create_timefolds(y, use_names = FALSE, type = "moving")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.