私が以前に較正されたモデルを使って予測を生成するために、SAS 9.4でのproc有馬を使用していますが、モデル自体を校正しようとしているかのように、それはエラーを投げている:NoEstでproc arimaが 'モデルに適合するデータが不足しています'というエラーが表示されるのはなぜですか?
ERROR:への十分なデータがありませんがモデルに適合
サンプルデータ:
data inputs;
input x var1 var2 var3 var4 var5;
datalines;
20 5 2 4 5 4
25 12 56 13 44 4
20 5 2 4 5 4
25 12 56 13 44 4
20 5 2 4 5 4
25 12 56 13 44 4
. 2 5 6 5 4
;
失敗バージョン:
proc arima;
identify
data = inputs
var = x
crossCorr = (var1 var2 var3 var4 var5)
noPrint;
estimate
p = 1 input = (var1 var2 var3 var4 var5)
ar = 0.9
initVal = (0.1$var1 0.2$var2 0.3$var3 0.4$var4 0.4$var5)
noint
noEst /* Using noEst so should not need to do any estimation and short data-set should not be a problem */
method=ml
noprint
;
forecast lead=1 out=outputs noOutAll noprint;
quit;
私はモデルから、最終的な変数を削除すると、それが正常に動作します:
proc arima;
identify
data = inputs
var = x
crossCorr = (var1 var2 var3 var4)
noPrint;
estimate
p = 1 input = (var1 var2 var3 var4)
ar = 0.9
initVal = (0.1$var1 0.2$var2 0.3$var3 0.4$var4)
noint
noEst /* Using noEst so should not need to do any estimation and short data-set should not be a problem */
method=ml
noprint
;
forecast lead=1 out=outputs noOutAll noprint;
quit;
私もデータに1つのより多くの価値を追加することにより、「仕事」にそれを得ることができます。しかし、モデルがすでに較正されている(もっと多くのデータを使用している)場合、これは必要ではありません。
私はSASのマニュアルをチェックして、このエラーの原因となる不要なチェックを防止するフラグが存在するかどうかを確認しましたが、どれも役に立たなかったことを確認しました。
私はあなたの時間を表す変数のコードとどのように多くの以前の期間、あなたのデータを持っているから言うことはできませんが、ARMIAは、予測のために、以前の期間の一定数を必要とする、オーダーやモデルに応じて、 。 (p、d、q)のモデルは、以前の観測値max(p + d、q + d + 1)を必要とする。 – david25272
上のサンプルデータビットには、過去6回の観測値があります。 ここでは(1,0,0)というもっとも単純なモデルになってしまったので、私はあなたの数式に従うだけで前回の観測を1回する必要があります(SASには最低6回の観察が必要な別の問題があります)。 –
モデルは一定の時間ステップである限り時間ステップが同じであれば同じ動作をする必要があるので、私は時間変数を提供する必要はないと思う。 適用される制限は、私が使用するプレディクタ変数の数に基づいています。なぜなら、プレミア変数を削除すると正常に動作するからです。しかし、このチェックはモデルを較正する必要がある場合にのみ意味を持ちます。 –