2017-01-02 2 views
0

私はstatsmodelsのSARIMAXモデルを使用しようとしていましたが、私の予測については信頼区間を返しています。StatsmodelsのSARIMAX `conf_int()`出力を理解して使用するのに問題があります

私の目標は、信頼区間の上限と下限のための一連の予測を生成することです。

get_prediction()、最後にconf_int()を使用してモデルを作成しようとしました。 get_prediction()は、私が期待したとおりに私の各インデックスのデータを返します。しかし、conf_int()は、奇妙な行列を返します。

 0 1 
ar.S.L7 0.018806 0.194818 
ma.S.L7 -0.830238 -0.717128 
sigma2 40.832875 48.105937 

私はわかりません。私はこれらがモデルのパラメータであることに気付きましたが、これらを使用して各指標の上下限予測を取得する方法はわかりません。

私は参考にしました:thisthis、およびthisですが、いずれも同じ問題を抱えていないようです。私もthis questionを見てきました。私はできるだけコードに従うように試みましたが、問題を再現することはできません。

+0

conf_intは、どの統計情報が参照されているかによって異なることを意味します。モデル結果インスタンスの 'conf_int'は、推定されたパラメータの信頼区間です。予測または予測における 'conf_int'は、新しい観測の予測間隔または新しい観測の期待値の信頼区間です。 – user333700

答えて

1

あなたは:

model = sm.tsa.statespace.SARIMAX(params) 
fit_model = model.fit() 

nforecast = 144 
forecast = fit_model.get_prediction(end=model.nobs+nforecast) 

ci = forecast.conf_int() 

print(ci.head()) 

あなたが取得する必要があります:あなたは、あなたの中の機能の見出しを持っていない場合

  upper [name of your feature]  lower [name of your feature] 

time1   0.018806     0.194818 
time2   -0.830238     -0.717128 
time3   40.832875     48.105937 

CIのデフォルトの見出しは、単に「上位」と「下」です元のデータ。

関連する問題