e1071パッケージのRのサポートベクトル回帰を使用して、leave-one-out相互検証を実装しようとしています。データと私はこのような多かれ少なかれ見ていコード:サポートベクトル回帰を使用して新しいデータを予測するR
library(e1071)
#create fake dataset
y=rpois(30,3)-4+(rbinom(30,1,0.5))/2
x1=c(rep('C',16),rep('S',14))
x2=c(runif(16,0,1),runif(14,0,1)/10)
x3=c(runif(16,0,1)/5,runif(14,0,1))
dat=data.frame(y=y,x1=x1,x2=x2,x3=x3)
train=dat[-1,]
test=dat[1,]
# train the model
model=tune(svm, train$y ~ train$x1*train$x2*train$x3,kernel='linear',
ranges = list(epsilon = seq(0.1,0.6,0.1), cost = 2^(0:9)))
model=model$best.model
#predict
predict(model,newdata=test)
問題は、関数は、訓練を受けた値を返し、テストデータセットを予測しない予測するということです。私はここで同様の質問、predict.svm does not predict new dataを見たことがありますが、解決策は私のコードには適用されないようです。この問題に関するアイデアはありますか?
実際、私は前にこの方法で関数を呼び出していましたが、何らかの理由で私はエラーメッセージを受け取りました。今それは働いた。助けてくれてありがとう! – tfigueiredo