我正在尝试使用 R 中库 kernlab
中的函数 predict.ksvm
。
我一直在阅读以下链接的文档:
https://www.rdocumentation.org/packages/kernlab/versions/0.9-27/topics/predict.ksvm
函数 ksvm 正在工作,所以只是预测函数当前不工作。
代码:
library(kernlab)
mySvm<-ksvm(x=as.matrix(train[,-4703]),y=train[,4703],kernel="vanilladot")
predSvm<-predict.ksvm(mySvm,newdata=test[,-4703])
错误:
Error in predict.ksvm(mySvm, newdata = test[, -4703]) :
could not find function "predict.ksvm"
最佳答案
简单地尝试一下
predSvm <- predict(mySvm, newdata = test[,-4703])
它应该可以工作,因为 mySvm
是 ksvm
类的对象,并且会自动为其选择适当的函数方法。
当你写的时候
predSvm <- predict.ksvm(mySvm, newdata = test[,-4703])
它不起作用,因为 ksvm
类的 predict
方法对您有些隐藏,假装不存在。如果它是一个 S3
函数,您可以编写 kernlab:::predict.ksvm
,但在本例中它是一个 S4
函数,因此您需要 getMethod("predict", "ksvm")
才能查看该函数。
关于r - 没有找到 ksvm 的预测函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53740020/