专家。我是R的初学者。我正在尝试使用插入符号SVM进行分类。内核是svmPoly。 首先,我使用默认参数来训练模型,留下一次性交叉验证 代码是:
ctrl <- trainControl(method = "LOOCV",
classProbs = T,
savePredictions = T,
repeats = 1)
modelFit <- train(group~.,data=table_svm,method="svmPoly",
preProc = c("center","scale"),
trControl = ctrl)
最佳准确度为80%。用于模型的最终值是degree = 1,scale = 0.1和C = 1.
其次,我试图调整参数。 代码是:
grid_svmpoly=expand.grid(degree=c(1:11),scale=seq(0,5,length.out=25),C=10^c(0:4))
modelFit_tune <- train(group~.,data=table_svm,method="svmPoly",
preProc = c("center","scale"),
tuneGrid=grid_svmpoly,
trControl = ctrl)
我收到一条错误消息:{:错误 任务264失败 - &#34;在下标的作业中不允许使用NA&#34;
我检查了数据,发现没有NA。
答案 0 :(得分:0)
数据集中必须有一些NA。我不是新手,但不是很多专家。为了确保在内部没有NA,首先使用以下方法将数据集转换为矩阵格式:
Rectangle rectangle = new Rectangle((float) x, (float) y, (float) xWidth, (float) yWidth);
然后使用which()函数,在这种情况下非常方便:
x <- data.matrix(dataframe)
我希望这能帮助您找到答案。值将按行顺序排列。
如果这样可以解决您的问题,请告诉我。