キャレットパッケージの5倍交差検証アルゴリズムを理解しようとしましたが、折りたたみごとにトレインセットとテストセットを取得する方法がわかりませんでした。同様の示唆された質問からこれを見つけてください。私はランダムフォレスト法による相互検証を行いたい場合を想像し、私は次のようにします。キャレットクロスバリデーションの各折りたたみのテストセットとトレインセット
set.seed(12)
train_control <- trainControl(method="cv", number=5,savePredictions = TRUE)
rfmodel <- train(Species~., data=iris, trControl=train_control, method="rf")
first_holdout <- subset(rfmodel$pred, Resample == "Fold1")
str(first_holdout)
'data.frame': 90 obs. of 5 variables:
$ pred : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1
$ obs : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1
$ rowIndex: int 2 3 9 11 25 29 35 36 41 50 ...
$ mtry : num 2 2 2 2 2 2 2 2 2 2 ...
$ Resample: chr "Fold1" "Fold1" "Fold1" "Fold1" ...
は、トレーニングセットとして使用Fold1でこれらの90個の観測はありますか?はいの場合、この折り目のテストセットはどこですか?
手動でそれを行うための必要はありません。 'str(rfModel)'をチェックする 'index'と' indexOut'の中にそれを見つけることができます。 –