def test_forecast(): # Numpy endog = dta['infl'].iloc[:100].values mod = ARIMA(endog[:50], order=(1, 1, 0), trend='t') res = mod.filter([0.2, 0.3, 1.0]) endog2 = endog.copy() endog2[50:] = np.nan mod2 = mod.clone(endog2) res2 = mod2.filter(res.params) assert_allclose(res.forecast(50), res2.fittedvalues[-50:])
def test_forecast_with_exog(): # Numpy endog = dta['infl'].iloc[:100].values exog = np.arange(len(endog))**2 mod = ARIMA(endog[:50], order=(1, 1, 0), exog=exog[:50], trend='t') res = mod.filter([0.2, 0.05, 0.3, 1.0]) endog2 = endog.copy() endog2[50:] = np.nan mod2 = mod.clone(endog2, exog=exog) print(mod.param_names) print(mod2.param_names) res2 = mod2.filter(res.params) assert_allclose(res.forecast(50, exog=exog[50:]), res2.fittedvalues[-50:])