Two step ahead autoregressive prediction

2 Ansichten (letzte 30 Tage)
Elias Pergantis
Elias Pergantis am 14 Nov. 2023
Beantwortet: Divyam am 21 Aug. 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 Kommentar
Ganesh
Ganesh am 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

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Divyam
Divyam am 21 Aug. 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]}

Kategorien

Mehr zu Conditional Mean Models finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by