CARET. Relação entre divisão de dados e trainControl

Eu li atentamente oCARET documentação em:http://caret.r-forge.r-project.org/training.html, as vinhetas, e tudo está bem claro (os exemplos no site ajudam muito!), mas ainda estou confuso sobre a relação entre dois argumentos paratrainControl:

method 
index

e a interação entretrainControl e as funções de divisão de dados no cursor (por ex.createDataPartition, createResample, createFolds ecreateMultiFolds)

Para enquadrar melhor minhas perguntas, deixe-me usar o seguinte exemplo da documentação:

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)

Minhas perguntas são:

Se eu usarcreateDataPartition (que eu suponho que faz bootstrap estratificado), como no exemplo acima, e eu passar o resultado comoindex paratrainControl eu preciso usarLGOCV como o método na minha chamadatrainControl? Se eu usar outro (por exemplo,cv) Que diferença faria? Na minha cabeça, uma vez que você conserteindex, você está essencialmente escolhendo o tipo de validação cruzada, então não tenho certeza de qual papelmethod joga se você usarindex.

Qual é a diferença entrecreateDataPartition ecreateResample? É issocreateDataPartition faz bootstrapping estratificado, enquantocreateResample não faz?

3) Como posso fazerestratificado Validação cruzada de k-fold (por exemplo, 10 vezes) usando cursor? O seguinte faria isso?

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

questionAnswers(1)

yourAnswerToTheQuestion