Ich versuche, ein Programm zu schreiben, in dem die Daten und der Platzhalter für die Variable y (output) der Funktion übergeben werden. Die Funktion erzeugt die Konfusionsmatrix für den Datensatz und die Testdaten. Dies ist in der Tat mein 5. Versuch bei dieser Art von Funktion - weshalb die meisten dieser Funktion von einem Handbuch ist, das die Irisdaten als Datensatz benutzt - aber ich scheine am y.vec-Eingang für die Funktion hängen zu bleiben. Ist meine Methode zum Einfügen der y-Variable in die Funktion korrekt?Ich versuche, eine Funktion in R zu schreiben, die die Konfusionsmatrix mithilfe eines SVM für die Klassifizierung findet.
Jede Hilfe wäre willkommen und ich danke Ihnen im Voraus.
Hier ist meine Funktion.
Funktion (Daten, y.vec)
{
Bibliothek (E1071) Bibliothek (rpart) data = Daten
index <- 1:nrow(data)
testindex <- sample(index, trunc(length(index)/3))
testset <- data[testindex,]
trainset <- data[-testindex,]
svm.model <- svm(as.factor(data[y.vec]) ~ ., data = trainset, cost = 100, gamma = 1)
svm.pred <- predict(svm.model, testset[,-y.vec])
table(pred = svm.pred, true = testset[,y.vec])
}
Danke Prem. Ich schätze es sehr. Ich habe es auf einigen anderen Bestandsdatensätzen versucht und sie produzieren Ergebnisse. –
Froh, dass es geholfen hat! – Prem