我使用了以下代码:
library(e1071)
svm.model<-svm(default.payment.next.month~PAY_AMT6,data=creditdata,cost=5,gamma=1)
plot(svm.model,data=creditdata,fill=TRUE)
使用@parth提供的可重现示例,您可以尝试如下所示的操作。
library(caret)
library(e1071)
#sample data
data("GermanCredit")
#SVM model
svm.model <- svm(Class ~ Duration + Amount + Age, data = GermanCredit)
#plot SVM model
plot(svm.model, data = GermanCredit, Duration ~ Amount)
这里我运行了一个分类模型,因此
y
中的 Class
(即上述情况中的 ?svm
)应该是 factor
(您可以使用 str(GermanCredit)
来验证这一点)。 模型构建完成后,您可以使用
plot
绘制它。 ?plot.svm
表示如果模型中使用两个以上自变量,则需要提供 formula
(通过固定 2 个维度,即上述情况下的 Duration ~ Amount
)。您可能还对 slice
选项感兴趣(更多详细信息请参阅 ?plot.svm
)。
我知道这已经很旧了,但仍然显示在我的搜索结果的顶部附近。我只是可能遇到类似的问题(尽管由于缺乏相关细节而很难判断)。
我的目标是数字,它不会绘制任何东西,也不会给出为什么它不会的反馈。
我只是在制作模型之前将目标转换为因子,并且它起作用了。
df$target <- as.factor(df$target)