Я хочу создать разделы данных jack-knife для кадра данных ниже с разделами, которые будут использоваться в caret::train
(как производит caret::groupKFold()
).Однако уловка заключается в том, что я хочу ограничить контрольные точки более 16 дней, используя оставшуюся часть этих данных в качестве обучающего набора.
df <- data.frame(Effect = seq(from = 0.05, to = 1, by = 0.05),
Time = seq(1:20))
Причина, по которой я хочу это сделать, заключается в том, чтоМеня интересует только то, насколько хорошо модель предсказывает верхнюю границу, поскольку это область интереса.Я чувствую, что есть способ сделать это с помощью функции caret::groupKFold()
, но я не уверен, как это сделать.Любая помощь будет принята с благодарностью.
Пример того, что будет содержать каждый сгиб CV:
TrainSet1 <- subset(df, Time != 16)
TestSet1 <- subset(df, Time == 16)
TrainSet2 <- subset(df, Time != 17)
TestSet2 <- subset(df, Time == 17)
TrainSet3 <- subset(df, Time != 18)
TestSet3 <- subset(df, Time == 18)
TrainSet4 <- subset(df, Time != 19)
TestSet4 <- subset(df, Time == 19)
TrainSet5 <- subset(df, Time != 20)
TestSet5 <- subset(df, Time == 20)
Хотя в формате, который выводит функция caret::groupKFold
, чтобы сгибы могли бытьподается в функцию caret::train
:
CVFolds <- caret::groupKFold(df$Time)
CVFolds
Заранее спасибо!