Сбор -из -предсказаний кратности из модели каре

Я хочу использовать -из -кратных прогнозов из каретной модели для обучения модели второго -этапа, которая включает некоторые исходные предикторы. Я могу собрать -из -кратных предсказаний следующим образом:

#Load Data
set.seed(1)
library(caret)
library(mlbench)
data(BostonHousing)

#Build Model (see ?train)
rpartFit <- train(medv ~. + rm:lstat, data = BostonHousing, method="rpart",
               trControl=trainControl(method='cv', number=folds, 
                                        savePredictions=TRUE))

#Collect out-of-fold predictions
out_of_fold <- rpartFit$pred
bestCP <- rpartFit$bestTune[,'.cp']
out_of_fold <- out_of_fold[out_of_fold$.cp==bestCP,]

Это здорово, но они в неправильном порядке:

> all.equal(out_of_fold$obs, BostonHousing$medv)
[1] "Mean relative difference: 0.4521906"

Я знаю, что объект trainвозвращает список индексов, которые использовались для обучения каждой складки:

> str(rpartFit$control$index)
List of 10
 $ Fold01: int [1:457] 1 2 3 4 5 6 7 8 9 10...
 $ Fold02: int [1:454] 2 3 4 8 10 11 12 13 14 15...
 $ Fold03: int [1:457] 1 2 3 4 5 6 7 8 9 10...
 $ Fold04: int [1:455] 1 2 3 5 6 7 8 9 10 11...
 $ Fold05: int [1:455] 1 2 3 4 5 6 7 8 9 10...
 $ Fold06: int [1:455] 1 2 3 4 5 6 7 8 9 10...
 $ Fold07: int [1:457] 1 3 4 5 6 7 8 9 10 13...
 $ Fold08: int [1:455] 1 2 4 5 6 7 9 11 12 14...
 $ Fold09: int [1:455] 1 2 3 4 5 6 7 8 9 10...
 $ Fold10: int [1:454] 1 2 3 4 5 6 7 8 9 10...

Как я могу использовать эту информацию, чтобы разместить наблюдения в моем объекте out_of_foldв том же порядке, что и исходный набор данных BostonHousing?

10
задан Richie Cotton 11 January 2015 в 06:20
поделиться