EconStatsCraft rigorous, plain-spoken econometrics
Econometrics that explains itself.
Regression, panel data, time series and the whole battery of tests. Every result is followed by a verdict you can defend.
Load a dataset to see it here.
EconStatsCraft › Dynamic regression (ARIMAX)
Plain ARIMA can only extrapolate a series from its own past. This forecasts one series using OTHER series as predictors - a regression with ARIMA errors. It checks the differencing order for you, tells you by AIC/BIC whether the predictors actually earn their place, and is explicit about what the forecast assumes.
A plain ARIMA forecasts a series from its own past. Dynamic regression adds other series as drivers, so the forecast can respond to things ARIMA cannot see. The subtlety is what happens to the errors: regress two trending series on each other with independent errors and you get a spurious fit, so the ARIMA part is not an ornament on the regression, it is what keeps the standard errors honest.
When you want to forecast ONE series and you believe other series carry information about it beyond its own history - sales from consumer confidence, inflation from the exchange rate, electricity demand from temperature. If you care equally about all the series and want to model them as a system, use a VAR instead.
The model is y_t=x_t'\beta+\eta_t where the DISTURBANCE, not the raw series, follows an ARIMA: \phi(L)(1-L)^d\eta_t=\theta(L)\varepsilon_t. Estimating \beta by OLS and then fitting ARIMA to the residuals is not equivalent and is not efficient - the two must be estimated jointly by maximum likelihood, which is what SARIMAX does. When d>0 the differencing applies to y and to x alike, so the model in differences is \Delta y_t=\Delta x_t'\beta+\dots, and \beta retains its interpretation as the effect of a change in x on a change in y. A drift term is needed whenever d+D=1, or the trend in y has nowhere to go and loads onto whichever regressor also trends.
y_t=\beta'x_t+\eta_t,\qquad \phi(L)(1-L)^{d}\eta_t=\theta(L)\varepsilon_t,\qquad \varepsilon_t\sim\text{WN}(0,\sigma^2)
Retail sales on consumer confidence, the interest rate and unemployment, each lagged two months. The unit-root step makes it ARIMAX(2,2,1). Confidence lagged two months carries the model: 0.9460 (SE 0.1106, z = 8.55), while the interest rate (-1.0153, p = 0.43) and unemployment (0.6684, p = 0.67) add nothing individually. Against the same ARIMA with no predictors, BIC falls from 966.4 to 910.1, so as a group they earn their place. Two things in that output are worth more than the coefficients. The MA term sits at exactly -1.0000 with an absurd standard error, which is the signature of over-differencing - d = 2 where d = 1 would do, and the MA root cancelling the extra difference. And Ljung-Box rejects at p = 0.026, so structure is left in the residuals and the forecast intervals below are narrower than they deserve to be. A fit that reports both of those honestly is more useful than one that hides them.
| If you see this | It means | Do this |
|---|---|---|
| Predictor significant but residuals autocorrelated | The ARIMA order is inadequate | The t-statistic is not trustworthy yet |
| Coefficient collapsing when differencing is applied | The level relationship was spurious | The differenced answer is the honest one |
| Forecast intervals implausibly narrow | Regressor forecast uncertainty excluded | Lag the predictors, or widen the interval |
| Series of different integration orders | Unbalanced regression | Difference the higher-order one, or test for cointegration |
| Predictors and y cointegrated | Differencing throws away the long run | Use an error-correction or ARDL specification |
| Huge z-statistics on the AR terms | Ill-conditioned from predictor scale | Standardise; this is silently catastrophic otherwise |
ARIMA, the univariate case. ARDL, when the series are cointegrated and the long run matters.
Yield curve (Nelson–Siegel / Svensson) · Dynamic factor model · Structural VAR · VAR · Granger causality · Cointegration · VECM · ARDL & bounds test
Line chart · Area chart · Bar chart · Stacked bar · Scatter plot · Bubble chart · Histogram · Box plot · Pie chart · Heat map · Rebased to 100 · Lorenz curve and Gini
World map · Bivariate map · Flow map · India - state map · India - district map
Descriptive statistics · Summary by group · Two-way table · Classical statistical tests
Multiple regression (OLS) · Logit / Probit · Tobit (censored) · Truncated regression · Multinomial logit · Ordered logit / probit · Quantile regression · Poisson / Negative binomial
Time-varying coefficients (Kalman) · Unit root tests · Correlogram (ACF / PACF) · ARIMA / SARIMA · Rolling-origin cross-validation · Theta method · Unobserved components · STL forecasting · Forecast combination · Markov regime switching · Change frequency (resample) · ARCH / GARCH volatility · Decompose & filter · Spectral analysis · Exponential smoothing · Forecast accuracy
Yield curve (Nelson–Siegel / Svensson) · Dynamic factor model · Dynamic regression (ARIMAX) · Structural VAR · VAR · Granger causality · Cointegration · VECM · ARDL & bounds test
Panel regression · Panel cointegration tests · Heterogeneous panel: Mean Group & PMG · Gravity model of trade · Dynamic panel GMM · Panel diagnostics · Panel unit-root tests
Principal components (PCA) · Factor analysis · Cluster analysis
Conjoint analysis · MaxDiff (best–worst scaling) · TURF - reach of a product line · Price sensitivity (Van Westendorp) · Market basket analysis · Perceptual map · Scale reliability (Cronbach’s alpha) · Key driver analysis
Spatial autocorrelation · Spatial regression · Heckman selection · Instrumental variables (2SLS) · Difference-in-differences · Staggered difference-in-differences · Regression discontinuity · Matching & weighting · Oaxaca–Blinder decomposition
Black–Scholes option pricing · Bond price, duration & convexity · Merton distance to default · EMI / home loan planner · CAPM / beta estimation · Multi-factor model · Portfolio optimization · Value at Risk & Expected Shortfall · Performance & drawdown · Time value of money & NPV/IRR · Equity valuation (DDM, FCF, residual income) · Cost of capital (WACC) · Binomial option pricing · Option strategies (payoff & profit) · Forwards, futures & swaps · Credit risk & Basel capital · Extreme value theory (tail risk)
Life table · Life annuity · Life insurance pricing · Chain ladder reserving · Buhlmann credibility · Survival analysis · Mortality graduation · Aggregate loss model · Ruin probability · Multi-state Markov model · Loss severity fitting
Monte Carlo experiment · F-test, Wald & Chow · Structural breaks & stability
Regression vs machine learning · Ridge / Lasso / Elastic Net · Random forest · Gradient boosting
EconStatsCraft rigorous, plain-spoken econometrics
Regression, panel data, time series and the whole battery of tests. Every result is followed by a verdict you can defend.
Load a dataset to see it here.
Pick the example closest to your question. You get a spreadsheet with the right columns and a few rows showing the expected format - replace the numbers with your own, then paste or upload it back.
Copy the header row from the table above (or from the downloaded template), put your own rows underneath, and paste the whole thing here. It is checked against the layout before anything is imported.
Or click a row in the preview below.
For a units or notes row.
Search every source at once. World Bank indicators need countries and years; everything else loads in one click.
Loading the catalogue…
The engine stays loaded, so this is quick - and it leaves your open tab and panel layout alone.
⌘/Ctrl+Enter runs the current analysis. ⌘/Ctrl+P exports the session as a PDF. Esc closes this.
In the Notebook: Enter starts a new block and
Shift+Enter a new line inside one; Backspace at the start
joins back into the paragraph above; / on an empty line inserts anything.
⌘/Ctrl+B, I, E, H and
M apply bold, italic, code, highlight and maths.
#, ##, -, 1., > and
``` at the start of a line convert it.
Sign in to run unlimited analyses.
Scroll to pan · Esc to close