Les données de Prédiction à l'aide de l'Arbre de Décision de rpart

Je suis aide R à la classification des données-cadre appelé " d " contenant des données structurées comme ci-dessous:

Les données de Prédiction à l'aide de l'Arbre de Décision de rpart

Les données 576666 les lignes et les colonnes "classLabel" a un facteur de 3 niveaux: UN, DEUX, TROIS.

Je fais un arbre de décision à l'aide de rpart:

fitTree = rpart(d$classLabel ~ d$tripduration + d$from_station_id + d$gender +  d$birthday)

Et je tiens à prédire les valeurs de la "classLabel" pour newdata:

newdata = data.frame( tripduration=c(345,244,543,311), 
                      from_station_id=c(60,28,100,56),
                      gender=c("Male","Female","Male","Male"),  
                      birthday=c(1972,1955,1964,1967) )

 p <- predict(fitTree, newdata)

J'attends mon résultat à une matrice de 4 lignes avec une probabilité de les trois valeurs possibles pour "classLabel" de newdata. Mais ce que j'obtiens comme résultat dans p, est un dataframe de 576666 lignes comme ci-dessous:

Les données de Prédiction à l'aide de l'Arbre de Décision de rpart

J'ai également le message d'avertissement suivant lors de l'exécution de la predict fonction:

Warning message:
'newdata' had 4 rows but variables found have 576666 rows 

Où suis-je fais de mal?!

N'utilisez pas de $ dans vos formules. Au lieu d'utiliser ` rpart(classLabel ~ tripduration + from_station_id + sexe + anniversaire, data=d)` sinon, les variables sont liées à "d" et ne pourra pas être résolu à l'intérieur de votre newdata de données.cadre. Dans l'avenir, assurez-vous d'inclure un reproductible exemple avec des échantillons de données d'entrée afin que nous puissions obtenir la même erreur que vous (les images de données ne comptent pas).

OriginalL'auteur Saba Jamalian | 2015-04-11