2016-08-10 5 views
1

ARFIMAをカルマンフィルターで予測し、arfimaモデルをKalmanforecastに収めることはできません。ARFIMAからモデルが生成されないR

library(base) 
library(stats) 
library(parallel) 
library(forecast) 
sink(file='/home/nero/KF_arfima.log') 
f=COST$COST 
x=logb(p,10) 
# Start the clock! 
ptm <- proc.time() 
p=arfima(x[1:50], drange=c(0, 0.5),estim=c("mle")) 
pr <- KalmanForecast(2, p$model) 
y=x[51:52] 
yhat=pr$pred #predicted value 
map=mean(abs((y - yhat)/y)) #MAPE 
proc.time() - ptm 
print(map) 

私は私もチェックし、モデルと呼ばれるオブジェクトがないことがわかったエラーに

Error in KalmanForecast(2, p$model) : invalid argument type"

を取得しています。私はそれを解決するために3日間失った。私は様々なRパッケージを試しましたが、どれもそれを解決していません。それを修正する方法を教えてください。

データサンプル:

Timestamp,COST 
2015-09-21T00:00:00+00:00,6 
2015-09-21T00:06:00+00:00,7 
2015-09-21T00:12:00+00:00,7 
2015-09-21T00:18:00+00:00,7 
2015-09-21T00:24:00+00:00,7 
2015-09-21T00:30:00+00:00,7 
2015-09-21T00:36:00+00:00,7 
2015-09-21T00:42:00+00:00,6 
2015-09-21T00:48:00+00:00,7 
2015-09-21T00:54:00+00:00,6 
2015-09-21T01:00:00+00:00,6 
2015-09-21T01:06:00+00:00,7 
2015-09-21T01:12:00+00:00,7 
2015-09-21T01:18:00+00:00,7 
2015-09-21T01:24:00+00:00,7 
2015-09-21T01:30:00+00:00,7 
2015-09-21T01:36:00+00:00,7 
2015-09-21T01:42:00+00:00,6 
2015-09-21T01:48:00+00:00,7 
2015-09-21T01:54:00+00:00,6 
2015-09-21T02:00:00+00:00,6 
2015-09-21T02:06:00+00:00,8 
2015-09-21T02:12:00+00:00,8 
2015-09-21T02:18:00+00:00,7 
2015-09-21T02:24:00+00:00,8 
2015-09-21T02:30:00+00:00,7 
2015-09-21T02:36:00+00:00,7 
2015-09-21T02:42:00+00:00,7 
2015-09-21T02:48:00+00:00,8 
2015-09-21T02:54:00+00:00,7 
2015-09-21T03:00:00+00:00,6 
2015-09-21T03:06:00+00:00,7 
2015-09-21T03:12:00+00:00,7 
2015-09-21T03:18:00+00:00,7 
2015-09-21T03:24:00+00:00,7 
2015-09-21T03:30:00+00:00,7 
2015-09-21T03:36:00+00:00,7 
2015-09-21T03:42:00+00:00,7 
2015-09-21T03:48:00+00:00,6 
2015-09-21T03:54:00+00:00,6 
2015-09-21T04:00:00+00:00,6 
2015-09-21T04:06:00+00:00,7 
2015-09-21T04:12:00+00:00,7 
2015-09-21T04:18:00+00:00,7 
2015-09-21T04:24:00+00:00,7 
2015-09-21T04:30:00+00:00,6 
2015-09-21T04:36:00+00:00,6 
2015-09-21T04:42:00+00:00,6 
2015-09-21T04:48:00+00:00,6 
2015-09-21T04:54:00+00:00,7 
2015-09-21T05:00:00+00:00,6 
2015-09-21T05:06:00+00:00,7 
2015-09-21T05:12:00+00:00,7 
+0

再現可能な例を使用せずにRを使用する方法に関するので、この質問を議論の対象外としています。 – gung

+0

@gung完全なコードとデータソースを配置します。 – Kal

+0

ありがとうございました、私はあなたがそこにいる最中だと思いますが、データへのアクセス方法はわかりません。私が与えたリンクに掲載されているデータを投稿する方法があります。 – gung

答えて

1

KalmanForecastのヘルプファイルは明らかにモデルの並べ替えが必要とされるものについて説明します。 arfima関数は、必要な種類の出力を生成しません。

KalmanForecastを使用する代わりに、予測パッケージのforecast機能を使用して予測を生成することができます。また、カルマンフィルタを使用して予測を計算します。

実際にKalmanForecastを使用して作業を行う場合は、自分でmod引数を作成する方法を理解する必要があります。

+0

私はこのようなコードを変更しましたが、同じエラーが発生しています: 'k = arfima(x [1:400]、drange = c(0,0.5)、estimate = c(" mle "))' 'z =予測(k、h = 2) ' ' pr < - KalmanForecast(2、z) 'モデルをチェックしますが、モデルは異なります。 – Kal

+0

あなたは私が書いたものを読まなかった。ヘルプファイルに記述されている形式でmod引数を作成しない限り、 'KalmanForecast'を使うことはできません。 –

+0

ありがとうございました...今や、予測パッケージが動作しています。最初は、予測パッケージを検索しましたが、カルマンフィルタは見つかりませんでした:) – Kal

関連する問題