2017-01-25 11 views
2

SASでPROC ARIMAで作成したモデルでデータセットにスコアを付けることはできますか?SASはデータセットをARIMAモデルにスコアリングできますか?

これは私はそれが動作していない持っているコードです:

proc arima data=work.data; 
identify var=x crosscorr=(y(7) y(30)); 
estimate outest=work.arima; 
run; 

proc score data=work.data score=work.arima type=parms predict out=pred; 
var x; 
run; 

私はこのコードを実行すると、私が言うPROCのSCORE部分からエラーを取得する「ERROR:見つからない変数xを」 x列はデータセットwork.dataにあります。

+0

データを表示できますか? –

+3

通常、予測のためにPROC ARIMA内のFORECAST文を使用します。データセットのスコアリングは時系列データでは少し異なり、PROC SCOREは線形モデルを望んでいるので、これが期待どおりに機能するかどうかは疑問です。 – Reeza

+0

@ Dinesh.hmn残念ながら、機密性の理由でデータを表示することはできません。 – Jarom

答えて

2

proc scoreは、自己相関変数をサポートしていません。サンプル外のスコアを取得する最も簡単な方法は、proc arimadataのステップを組み合わせることです。次に、sashelp.airを使用した例を示します。

ステップ1:

当社は、スコアデータセットとして1960年除外履歴データを生成します。

data have; 
    set sashelp.air; 
    where year(date) < 1960; 
run; 

ステップ2:モデルを生成し、予想

nooutallオプションは12の将来予測を生成するためにproc arimaを伝えます。

proc arima data=have; 
    identify var=air(12); 
    estimate p=1 q=(2) method=ml; 
    forecast lead=12 id=date interval=month out=forecast nooutall; 
run; 

ステップ3:スコア

モデルがどうやったのかよく見るためにあなたの見通しとの完全な歴史的データセットを一緒にマージします。私は個人的にはupdate statementが好きです。欠けている値を置き換えるものではないからです。

このコードを受け取り、それを一般化されたマクロに変換することができます。そうすれば、将来何かを得たいと思えば、マクロプログラムを呼び出して必要なものを手に入れることができます。

関連する問題