[解決済み] python の auto.arima() 相当品
質問
週間売上を予測するために
<ストライク
ARMA
ARIMA モデルを使っています。で order(p,d,q) を調整する関数が見つかりませんでした。
statsmodels
. 現在、Rには関数
forecast::auto.arima()
という関数があり、 (p,d,q) パラメータを調整することができます。
私のモデルのために正しい順序を選択するためにどのように行くのですか?この目的のためにpythonで利用可能なライブラリはありますか?
どのように解決するのですか?
いくつかのアプローチを実施することができます。
-
ARIMAResults
含むaic
そしてbic
. その定義によれば、( ここで と はこちら ), これらの基準は、モデルのパラメータ数に対してペナルティを課します。ですから、モデルを比較するためにこれらの数字を使うことができます。また、scipyにはoptimize.brute
があり、これは指定されたパラメータ空間でグリッド検索を行います。つまり、このようなワークフローが機能するはずです。def objfunc(order, exog, endog): from statsmodels.tsa.arima_model import ARIMA fit = ARIMA(endog, order, exog).fit() return fit.aic() from scipy.optimize import brute grid = (slice(1, 3, 1), slice(1, 3, 1), slice(1, 3, 1)) brute(objfunc, grid, args=(exog, endog), finish=None)
必ず
brute
でfinish=None
. -
以下のものを取得することができます。
pvalues
からARIMAResults
. ですから、一種のステップフォワードアルゴリズムは、追加されたパラメータに対して最も低いp値を得る次元にわたって、モデルの次数を増加させるという実装が簡単です。 -
使用方法
ARIMAResults.predict
を使用して、代替モデルを交差検証します。最良のアプローチは、時系列の末尾(例えば、直近の5%のデータ)をサンプルとして除外し、これらのポイントを使用して、代替モデルを得ることです。 テスト エラー を得るためにこれらのポイントを使用することです。
関連
-
[解決済み] for'ループでインデックスにアクセスする?
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] Pythonで例外を手動で発生(スロー)させる
-
[解決済み] Python 3 の "python -m SimpleHTTPServer" に相当するものは何ですか?
-
[解決済み】forループを使った辞書の反復処理
-
[解決済み】Pythonに三項条件演算子はありますか?
-
[解決済み] SQLAlchemy: セッションの作成と再利用
-
[解決済み] Pythonのキャッシュライブラリはありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] PythonでファイルのMD5チェックサムを計算するには?重複
-
[解決済み] Pythonでコード行間にかかる時間を測定するには?
-
[解決済み] 小数点以下1桁を取得する[重複]。
-
[解決済み] 文字列から先頭と末尾のスペースを削除するには?
-
[解決済み] 範囲指定された浮動小数点数のランダムな配列を生成します。
-
[解決済み] Django で全てのリクエストヘッダを取得するにはどうすれば良いですか?
-
[解決済み] Flask でグローバル変数はスレッドセーフか?リクエスト間でデータを共有するには?
-
[解決済み] Python Empty Generator 関数
-
[解決済み] 単純な文字列からtimedeltaオブジェクトを作成する方法
-
[解決済み] djangoのQueryDictをPythonのDictに変更するには?