Including exogenous (predictor) variables in the state equation of a state space model
7 次查看(过去 30 天)
显示 更早的评论
I'm trying to estimate a state space model of the form
x(t) = Ax(t-1) + Gz(t-1) + Bu(t)
y(t) = Cx(t) + De(t)
where z(t) is a vector of exogenous (predictor) variables. I'm using the econometrics toolbox. The toolbox documentation states that if you require predictor variables in the state equation, you can either
- Expand the states by including the constant 1 state or
- Expand the states by including predictors.
If z(t) is a constant vector,e.g. a vector of ones, then I suppose the state vector can be "expanded" as follows:
[x(t);z(t)] = [A G;0 1] *[x(t-1);z(t-1)] + [B;0]*u(t)
But what if z(t) is not a vector of constants, so z(t) is not equal to z(t-1)? If z(t) is comprised of random draws from some distribution for example, I'm not clear on how to include it in the state variable.
Thank you.
0 个评论
采纳的回答
Hang Qian
2015-4-14
I think there are couple of ways to put an exogenous term in the state equation.
First, we may add a constant one as the state variable. If z(t) is not a vector of constants, then the transition matrix would be time-varying, say [A Gz(t-1);0 1].
Second, we may put the vectorized G (excluding zeros in it) as the state variables. In that case, z(t-1) will be in a time-varying transition matrix.
Third, we may put the exogenous data as the state variables. Meanwhile, we also observe those state variables in the observation equation. In that case, the transition matrix remains time-invariant.
I usually use the second method, as it is a state estimation in exchange for the parameter estimation.
Hang Qian
2 个评论
Nat Pan
2018-3-4
Would you mind to illustrate how to command this by using SSM function? Please enlighten me. Thank you.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Diffuse State-Space Model 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!