0

関数のヘルプに含まれる例のわずかなバリエーションを実行していますが、 の代わりにtimeseriesWFユーザー定義関数 ( ) を使用しています。ただし、次の例では機能するのに機能しない理由はわかりますが、理解できません。svmRsvmError in UseMethod("predict") : no applicable method for 'predict' applied to an object of class "c('double', 'numeric')"svmsvmR

library(DMwR)
library(e1071)
getSymbols('^GSPC',from='2008-01-01',to='2012-12-31')
data.model <- specifyModel(
  Next(100*Delt(Ad(GSPC))) ~ Delt(Ad(GSPC),k=1:10)+Delt(Vo(GSPC),k=1:3))
data <- as.data.frame(modelData(data.model))
colnames(data)[1] <- 'PercVarClose'

svmR <- function(form,train,test,b.t=0.1,s.t=-0.1,...) {
  require(e1071)
  t <- svm(form,train,...)
  p <- predict(t,test)
}

spExp <- experimentalComparison(
  c(dataset(PercVarClose ~ .,data,'SP500_2008_2012')),
  variants('timeseriesWF',
           learner='svmR',learner.pars=list(cost=10),
           type=c('slide','grow'),relearn.step=200,
           evaluator.pars=list(stats='nmse')),
  mcSettings(2,0.5,0.25))

編集: Linux と Windows は異なるバージョンのパッケージを実行します。

4

0 に答える 0