BookmarkSubscribeRSS Feed
AndreaRossi
Calcite | Level 5

Hello

How to implement dynamic regression model like

(1 - u1*B-u2*B^2)*(1-u24*B^24)*(1-u168*B^168)*Yt = (vo+v1*B+v2*B^2)*Xt + Et

with Et  WN?

I have just read the proc arima user guide...And I don't know to transform my model in a transfer function model....

please help me!

15 REPLIES 15
AndreaRossi
Calcite | Level 5

Hello

How to implement dynamic regression model like

(1 - u1*B-u2*B^2)*(1-u24*B^24)*(1-u168*B^168)*Yt = (vo+v1*B+v2*B^2)*Xt + Et

with Et  WN?

Ksharp
Super User
If it is about Time Series Analysis, plz post it at Forecasting Forum.

Proc arima can do dynamic regression.

AndreaRossi
Calcite | Level 5

Ok..I post there my msg.

AndreaRossi
Calcite | Level 5

But I have just read the proc arima user's guide.....It declare to write in a transfer function form..In my case is not ok!

alexchien
Pyrite | Level 9

you could try the following estimate statement in proc arima:

 

estimate p=((1,2)(24)(168)) input((1,2)x);

AndreaRossi
Calcite | Level 5

thanks for the reply

I think, in this case, to write Yt = (v0 + v1*B + v2*B^2)*Xt + 1/((1-u1*B - u2*B^2)*(1-u24*B^24)*(1-u168*B^168))*Et

right or not?

 

alexchien
Pyrite | Level 9

i think you need to divide the backshift operator for Xt as well..

 

Yt = (v0 + v1*B + v2*B^2)/((1-u1*B - u2*B^2)*(1-u24*B^24)*(1-u168*B^168))*Xt + 1/((1-u1*B - u2*B^2)*(1-u24*B^24)*(1-u168*B^168))*Et

AndreaRossi
Calcite | Level 5
Yes i think so! there is a way to impose the two denominator to be equal?
AndreaRossi
Calcite | Level 5

Anyone have others idea?

alexchien
Pyrite | Level 9

Sorry, what do you mean by "impose the two denominator to be equal?"? One more thing, you need to add an NOINT to the ESTIMATE statement as there is no intercept term in ur model. 

AndreaRossi
Calcite | Level 5

Thank for the reply:

If I write my ARX like this

Yt = (v0 + v1*B + v2*B^2)/((1-u1*B - u2*B^2)*(1-u24*B^24)*(1-u168*B^168))*Xt + 1/((1-u1*B - u2*B^2)*(1-u24*B^24)*(1-u168*B^168))*Et

(whit NOINT option) the parameters of the two denominator are estimated different:

Yt = (v0 + v1*B + v2*B^2)/((1-u1a*B - u2b*B^2)*(1-u24a*B^24)*(1-u168a*B^168))*Xt + 1/((1-u1b*B - u2b*B^2)*(1-u24b*B^24)*(1-u168b*B^168))*Et

 

whit uia != uib

 

AndreaRossi
Calcite | Level 5

but in my model uia ==uib

rselukar
SAS Employee

You can specify Y = (numerator poly) / (denominator poly) X + E / (AR Poly) type model for your polynomials as follows:

 

proc arima data=test;

   identify var=y crosscorr=x;

   estimate p=(1 2)(24)(168)

            input=((1 2)/(1 2)(24)(168) x)

            noint;

run;

 

It will indeed happen that the estimated denominator polynomial coefficients in the transfer function will generally be different from the  estimated AR polynomial coefficients.  Currently PROC ARIMA does not allow constraining these coefficients to be the same.

 

You seem to be dealing with hourly data and are trying to capture hour of the day and hour of the week seasonal patterns.  Is this particular model very important for you or some other model might do that still does a good job?

AndreaRossi
Calcite | Level 5

thank for the reply rselukar

you have grasped fully my problem. It is a model of electricity price (Y) related to demand (X). I need to re-execute examples of a book for my thesis. I am searching others model too.

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

Multiple Linear Regression in SAS

Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 15 replies
  • 2287 views
  • 0 likes
  • 4 in conversation