L'implementazione randomForest non consente il campionamento oltre il numero di osservazioni, anche quando si campiona con la sostituzione. Perchè è questo?
Funziona bene:
rf <- randomForest(Species ~ ., iris, sampsize=c(1, 1, 1), replace=TRUE)
rf <- randomForest(Species ~ ., iris, sampsize=3, replace=TRUE)
Cosa voglio fare:
rf <- randomForest(Species ~ ., iris, sampsize=c(51, 1, 1), replace=TRUE)
Error in randomForest.default(m, y, ...) :
sampsize can not be larger than class frequency
Errore simile senza campione stratificato:
rf <- randomForest(Species ~ ., iris, sampsize=151, replace=TRUE)
Error in randomForest.default(m, y, ...) : sampsize too large
Dato che mi aspettavo che il metodo prendesse campioni bootstrap quando veniva dato sostituire = TRUE in entrambi i casi, non mi aspettavo questo limite.
Il mio obiettivo è quello di utilizzare questo con l'opzione di campionamento stratificato, al fine di prelevare un campione sufficientemente grande da una classe relativamente rara.