Two step ahead autoregressive prediction

4 vues (au cours des 30 derniers jours)
Elias Pergantis
Elias Pergantis le 14 Nov 2023
Réponse apportée : Divyam le 21 Août 2024
Is it possible to use the AR function in Matlab to train models such as:
y(t+2)=a(1)u(t-1)+a(2)u(t-2)+...+a(p)u(t-p)
rather than:
y(t+1)=a(1)u(t-1)+a(2)u(t-2)+...+a(p)u(t-p)
I want to avoid predicting y(t+2) using y(t+1).
Many thanks
  1 commentaire
Ganesh
Ganesh le 29 Nov 2023
If you would like to predict y(t+2), you can use the Nonconsecutive Lags parameter and tweak the array indices to achieve the result. However, by skipping a term in the middle might stand as a blocker to predict the subsequent terms of the sequence. Kindly ensure that all terms of the sequence are sequentially computed to avoid miscalculations.
Thank you,
Ganesh Saravanan

Connectez-vous pour commenter.

Réponses (1)

Divyam
Divyam le 21 Août 2024
Hi @Elias Pergantis, yes, you can utilize the AR functions to train models which have non-consecutive lags between terms using the 'ARLag' parameter of the 'regARIMA' function. Here is a sample code for the same.
% Sample Model Equation: y(t) = 0.25*u(t-3) + 0.1*u(t-4) + 0.05*u(t-5)
% The 'AR' parameter sets the coefficients of the u(t-k) terms
Mdl = regARIMA('AR', {0.25, 0.1, 0.05}, 'ARLags', [3,4,5])
Mdl =
regARIMA with properties: Description: "ARMA(5,0) Error Model (Gaussian Distribution)" SeriesName: "Y" Distribution: Name = "Gaussian" Intercept: NaN Beta: [1×0] P: 5 Q: 0 AR: {0.25 0.1 0.05} at lags [3 4 5] SAR: {} MA: {} SMA: {} Variance: NaN
% 'ARLag' parameter specifies that nonzero AR coefficients exist at lags t-3, t-4, and t-5
Mdl.AR
ans = 1x5 cell array
{[0]} {[0]} {[0.2500]} {[0.1000]} {[0.0500]}

Catégories

En savoir plus sur Conditional Mean Models dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by