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