-
Notifications
You must be signed in to change notification settings - Fork 0
Time Series Forecasting
Giacomo Saccaggi edited this page Jun 19, 2026
·
1 revision
| Method | Best for | Seasonal |
|---|---|---|
arima |
Trend + noise | No |
sarima |
Trend + seasonality | Yes |
exp_smoothing |
Seasonal patterns | Yes |
auto |
Let scomp-link decide | Auto-detect |
from scomp_link import TimeSeriesForecaster
fc = TimeSeriesForecaster(method='auto', horizon=30, seasonal_period=12)
fc.fit(series)
# Point forecast
forecast = fc.predict()
# With confidence intervals
ci = fc.predict_with_ci(alpha=0.05)
# DataFrame: forecast, lower, upper
# Walk-forward cross-validation
cv = fc.walk_forward_cv(series, n_splits=5, horizon=12)
print(f"MAE: {cv['mean_mae']:.2f}, RMSE: {cv['mean_rmse']:.2f}")
# Plot
fig = fc.plot_forecast(ci=ci)scomp-link forecast --data monthly_sales.csv --column revenue \
--horizon 12 --method auto --cv-splits 5 --output forecast.csvWhen method='auto', the forecaster:
- Detects seasonality via autocorrelation (ACF peak detection)
- If seasonal period > 1 and enough data →
sarima - If seasonal but short series →
exp_smoothing - Otherwise →
arimawith auto-order selection (AIC grid search)