CARET. Связь между разделением данных и trainControl

Я внимательно прочиталCARET документация по адресу:http://caret.r-forge.r-project.org/training.html, виньетки, и все довольно ясно (примеры на веб-сайте очень помогают!), но я все еще не уверен в связи между двумя аргументамиtrainControl:

method 
index

и взаимодействие междуtrainControl и функции разделения данных в карете (например,createDataPartition, createResample, createFolds а такжеcreateMultiFolds,)

Чтобы лучше сформулировать мои вопросы, позвольте мне использовать следующий пример из документации:

data(BloodBrain)
set.seed(1)
tmp <- createDataPartition(logBBB,p = .8, times = 100)
trControl = trainControl(method = "LGOCV", index = tmp)
ctreeFit <- train(bbbDescr, logBBB, "ctree",trControl=trControl)

Мои вопросы:

Если я используюcreateDataPartition (что я предполагаю, что делает стратифицированную загрузку), как в приведенном выше примере, и я передаю результат какindex вtrainControl мне нужно использоватьLGOCV как метод в моем звонкеtrainControl? Если я использую другой (например,cv) Какая разница? В моей голове, как только вы исправитеindex, вы по сути выбираете тип перекрестной проверки, поэтому я не уверен, какую рольmethod играет, если вы используетеindex.

В чем разница междуcreateDataPartition а такжеcreateResample? Это оноcreateDataPartition делает стратифицированную загрузку, в то время какcreateResample не делает?

3) Как я могу сделатьслоистый K-кратная (например, 10-кратная) перекрестная проверка с использованием каретки? Будет ли следующее сделать это?

tmp <- createFolds(logBBB, k=10, list=TRUE,  times = 100)
trControl = trainControl(method = "cv", index = tmp)
ctreeFit <- train(bbbDescr, logBBB, "ctree",trControl=trControl)

Ответы на вопрос(1)

Ваш ответ на вопрос