每次尝试实现ksvm时,我都会遇到这个错误。我的代码:
Train11<- read.csv('Train.csv', head=TRUE)
Train11 <- (sapply(Train11, as.numeric)) #convert all data to numeric
Train11 <- as.data.frame(Train11)
ModelV2<-ksvm(CityAssessment~., data=Train11, type= "C-svc", kernel="vanilladot", C=0.1,prob.model=TRUE)
Setting default kernel parameters
Error in indexes[[j]] : subscript out of bounds我不确定我错在哪里。数据集的维度是686x72。数据集中没有任何NA值(我已经检查过了!)也没有无限大的值。
非常感谢!
发布于 2019-05-26 23:12:03
我也有同样的问题,结果我的目标向量中只有一个类。
发布于 2021-06-25 21:32:32
对于将来阅读这篇文章的人来说。我也有同样的问题。
这可能是由于内核实验室包在内部处理类概率(prob.model = TRUE)的方式造成的。如果n很小或者类严重不平衡,内部的3重cv就会失败,可能是由于user2173836描述的原因。
解决方案:
1.)设置ksvm(...,prob.model = FALSE)
或
2.)仅运行具有足够大的n和类平衡的模型。对于我的问题,运行许多单个SVM作为MTL-SVM的基线比较,我可以跳过这些“糟糕”的任务。
https://stackoverflow.com/questions/45865572
复制相似问题