2009-09-03 11 views
1

Est-ce encore possible? J'avais un ensemble de données pour la formation qui comprenait environ 1500 entrées. Le randomForest a créé ses règles de décision et les a appliquées à l'échantillon d'entraînement Out of Bag choisi au hasard (à partir de l'ensemble de données original) (bootstrapped 10 000 fois). J'ai un ensemble de données séparé (non classifié) que je voudrais appliquer les 10.000 arbres créés afin de prédire la classification pour ces nouvelles entrées. Existe-t-il un moyen facile d'indexer les arborescences forestières sous-jacentes à ce nouveau jeu de données non classifié?Comment puis-je appliquer des règles de décision sous-jacentes créées à partir du package R randomForest sur un jeu de test NEW Out of Bag?

Répondre

3

Jetez un oeil à caret de Max Kuhn qui est conçu pour soutenir exactement ceci: formation de classification et de régression comme son titre l'indique.

Il s'enroule autour de Random Forest ainsi que de nombreux autres paquets, et a une documentation abondante, y compris JSS paper.

En plus caret, vous pouvez bien sûr il suffit d'utiliser la méthode predict sur le modèle que vous obtenez retourné comme cet exemple de la page d'aide suggère:

data(iris) 
set.seed(111) 
ind <- sample(2, nrow(iris), replace = TRUE, prob=c(0.8, 0.2)) 
iris.rf <- randomForest(Species ~ ., data=iris[ind == 1,]) 
iris.pred <- predict(iris.rf, iris[ind == 2,]) 
table(observed = iris[ind==2, "Species"], predicted = iris.pred) 

au lieu d'un échantillon aléatoire en utilisant ind, juste sous-ensemble des données vous-même dans des ensembles de formation et de validation.