我已经使用以下代码训练和测试了模型
library(e1071)
library(readxl)
library(caret)
class1.svm.model <- svm(Class ~ ., data = class1.trainset,cost=20, cross=10,type="C-classification",kernel="radial",na.action=na.omit)
class1.svm.pred <- predict(class1.svm.model, class1.testset)
finalmatrix<-data.matrix(class1.svm.pred, rownames.force = F)
test<-table(pred = class1.svm.pred, true = class1.testset[,c(15768)])
confusionMatrix(test)
但是无法为模型绘制ROC曲线。请以正确的语法帮助我,以绘制ROC曲线以查看测试数据的性能。
用类绘制SVM的ROC曲线:
roc_svm_test <- roc(response = class1.trainset$Class, predictor =as.numeric(class1.svm.pred))
plot(roc_svm_test, add = TRUE,col = "red", print.auc=TRUE, print.auc.x = 0.5, print.auc.y = 0.3)
legend(0.3, 0.2, legend = c("test-svm"), lty = c(1), col = c("blue"))