0
我使用svm
函数运行svm。在svm中,我可以在内核参数中输入线性参数,辐射参数和多项式参数。如何绘制svm和svm之前的结果?
因此,我想找出svm之前的数据分布并确定使用三个参数中的哪一个。如何输入代码来检查目标变量中的数据分布?
另外,如何绘制svm的结果?我已经做了计算器中的所有代码,但我得到了以下错误:
Error in Summary.factor(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, :
‘min’ not meaningful for factors
或
Error in plot.svm(german_svm, data = train) : missing formula.
这里是我的全部代码。请让我知道我的问题。
credit<-read.csv("http://freakonometrics.free.fr/german_credit.csv", header=TRUE)
credit$Creditability<-as.factor(credit$Creditability)
str(credit)
library(caret)
set.seed(1000)
intrain<-createDataPartition(y=credit$Creditability, p=0.7, list=FALSE)
train<-credit[intrain, ]
test<-credit[-intrain, ]
library("e1071")
result<-tune.svm(Creditability ~., data=train, gamma=2^(-5:0), cost=2^(0:4))
result$best.parameters
library("e1071")
german_svm<-svm(Creditability~.,data=train, gamma=0.03125, cost=1)
#Plotting the graph. And I had an error in here.
plot(german_svm, data=train)
plot(german_svm, train, Creditability ~ .,
+ slice = list(Sepal.Width = 3, Sepal.Length = 4))
plot.svm(german_svm,data = train)中的错误:缺少公式。此消息出现.. –
我检查了'?plot.svm'的文档。对于参数“公式”,它表示“公式选择可视化的二维,只有在使用两个以上的输入变量时才需要”,这意味着只有在具有最多3个特征(包括因变量)时才可以绘制svm模型。在这种情况下,你有很多变量,所以如果你真的想绘制它,那么你需要在你的公式中明确提供两个独立的特征。例如'plot(german_svm,data = train,Length.of.current.employment〜Credit.Amount)' – Prem