我使用模型和预测库e1071,它似乎与训练和测试数据一起正常工作,但不是我提供的新数据。 代码:
data2<-read.table('checked.bed')
data3<-read.csv('result_20_02.csv', header = FALSE)
index<-1:nrow(data2)
testindex<-sample(index,trunc(length(index)/3))
testset<-data2[testindex,]
trainset<-data2[-testindex,]
model1<-tune.svm(V3 ~ .,data=trainset,gamma=10^(-6:1),cost=10^(1:3))
bestGamma<-model1$best.parameters[[1]]
bestC<-model1$best.parameters[[2]]
svm.model<-svm(V3 ~ .,data=trainset,method='C-classification', kernel='radial',
cost=bestC,gamma=bestGamma,verbose=TRUE,cross=10)
svm.pred<-predict(svm.model,testset[,-3],decision.values = TRUE)
svm.pred1<-predict(svm.model,data3[,-3],decision.values = TRUE)
svm.pred工作正常,但不是svm.pred1。 错误:
Error in scale.default(newdata[, object$scaled, drop = FALSE], center = object$x.scale$"scaled:center", : length of 'center' must equal the number of columns of 'x'
我检查了两个表(data3和testset)有5列和相同类型的数据