Ich hatte ursprünglich einen Datenrahmen bestehend aus 12 Spalten in N Zeilen. Die letzte Spalte ist meine Klasse (0 oder 1). Ich musste meinen gesamten Datenrahmen in numerischen konvertiere mitVerwendung von randomforest() zur Klassifizierung in R?
training <- sapply(training.temp,as.numeric)
Aber dann dachte ich, ich die Klasse Säule benötigen ein Faktor Spalt, um die Random() Werkzeug als Klassifizierer zu verwenden, also tat ich
training[,"Class"] <- factor(training[,ncol(training)])
ich gehe den Baum mit
training_rf <- randomForest(Class ~., data = trainData, importance = TRUE, do.trace = 100)
zur Schaffung Aber ich bin immer zwei Fehler:
1: In Ops.factor(training[, "Status"], factor(training[, ncol(training)])) :
<= this is not relevant for factors (roughly translated)
2: In randomForest.default(m, y, ...) :
The response has five or fewer unique values. Are you sure you want to do regression?
Ich würde es schätzen, wenn jemand auf den Formatierungsfehler hinweisen könnte, den ich mache.
Danke!
Sie versuchen, '<=' für die Zuweisung anstelle von '<-' zu verwenden. Erstellen Sie auch eine neue Spalte? Wenn ja, sollten Sie die numerische Version von 'Class' loswerden oder nicht' .' in Ihrer Formel verwenden –
Die einzige Information, die diese Frage klären kann, ist die Ausgabe von 'str (training)'. – joran
@joran: num [1: 891, 1:12] 1 2 3 4 5 6 7 8 9 10 ... - attr (*, "dimnames") = Liste von 2 .. $: NULL .. $: chr [1:12] "ID" "Klasse" "Sex" "Alter" ... – marc