在R中使用SVM获取概率值时存在问题

在R中使用SVM获取概率值时存在问题,r,statistics,classification,svm,probability,R,Statistics,Classification,Svm,Probability,我有一个有28个属性的数据集。响应变量是二进制的(0和1)。我试着在运行SVM时使用“概率=T”。但我仍然无法从结果中得到概率值 这是我的训练数据集(最后一个属性是我的响应变量): 我的测试集看起来也很相似。它有24544个obs。有29个变量 这是我用于SVM的代码: fitSVM <- svm(AVERAGE_RATING ~., data=train, na.action = na.omit,probability=T) predSVM <- predict(fitSVM,te

我有一个有28个属性的数据集。响应变量是二进制的(0和1)。我试着在运行SVM时使用“概率=T”。但我仍然无法从结果中得到概率值

这是我的训练数据集(最后一个属性是我的响应变量):

我的测试集看起来也很相似。它有24544个obs。有29个变量

这是我用于SVM的代码:

fitSVM <- svm(AVERAGE_RATING ~., data=train, na.action = na.omit,probability=T)
predSVM <- predict(fitSVM,test[!rowSums(is.na(test)),],type="probability")
table(predSVM,test$AVERAGE_RATING[!rowSums(is.na(test))],useNA="no")
predSVM    0    1
      0 8091 1523
      1 3259 9865

我做错什么了吗

您需要调用
predict

predSVM <- predict(fitSVM,test[!rowSums(is.na(test)),], probability=T)

predSVM您需要调用
predict

predSVM <- predict(fitSVM,test[!rowSums(is.na(test)),], probability=T)
predSVM
predSVM <- predict(fitSVM,test[!rowSums(is.na(test)),], probability=T)