Python 時系列分析 1,000本ノック
– ノック100: Naive・Seasonal Naive –

Python 時系列分析 1,000本ノック– ノック100: Naive・Seasonal Naive –
次の Python コードでは、ARIMAモデルと一緒に Naive と SNaive という2つの単純な予測も計算しています。これらを計算している目的として最も適切なものはどれですか?

Python コード:

import numpy as np
from statsmodels.tsa.arima.model import ARIMA

np.random.seed(42)
s = np.tile([0, -3, 2, 5, 1, -2, 8, 6, -1, -4, 3, 12], 12)
y = (100 + np.cumsum(np.random.randn(144)*0.5) + s
     + np.random.randn(144)*1.5)
tr, te = y[:120], y[120:]

p = {'Naive': np.repeat(tr[-1], 24),
     'SNaive': np.tile(tr[-12:], 2),
     'ARIMA': ARIMA(tr, order=(2,1,1)).fit().forecast(24)}
for k, v in p.items():
    print(f"{k:6s}  RMSE:{np.sqrt(((te - v)**2).mean()):.2f}")

回答の選択肢:
(A) ARIMAの予測値を補正するための入力として使うため
(B) 複雑なモデルの予測精度を相対的に評価するための基準とするため
(C) 予測区間の幅を計算するための材料とするため
(D) ARIMAの次数を決めるための参考値とするため

Screenshot

【月1 特定テーマ講座(10月)】
Python で学ぶ 明日からできる「欠損値処理」超入門

【開催日時】 全2回(土)2026/10/17,10/31(13:30〜18:00)
【受講形式】 当日Zoom( or 復習用に後日動画視聴)
【参加費用】 2万2千円(税込み)/人