如何解决如何在 R 中对 SVM 执行交叉验证?
我正在尝试为医疗数据 (https://drive.google.com/file/d/1lIehAVBzR5B1NHS6-ozvqpJ9TRNK0VJu/view?usp=sharing) 构建 SVM 分类器,但我找不到它总是将 recid 预测为 NO 的原因。即使 YES 的概率超过 50%,它也会发生。
library(e1071)
library(caTools)
df <- read.table('datos_icb.txt',header=TRUE,stringsAsFactors = TRUE)
sample = sample.split(df$recid,SplitRatio = 0.75)
train = subset(df,sample == TRUE)
test = subset(df,sample == FALSE)
tune.out=tune(svm,recid~.,data=df,ranges=list(cost=c(0.001,0.01,0.1,1,5,10,100),gamma = c(0.5,2,3,4)))
summary(tune.out)
bestmod=tune.out$best.model
summary(bestmod)
ypred <- predict(bestmod,test)
table(predict=ypred,truth=test$recid)
会不会是数据类型问题?
提前致谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。