1

我从 R 中的 dse 包开始,我的目标是从状态空间模型估计矩阵 G 和 Q:

z(t) =Fz(t-1) + Gu(t) + Kw(t-1)

y(t) = Hz(t) + w(t)

u_t 是我的输入向量,我称之为 tx_cho,它每季度定义一次,y_t 是我的输出向量,我称之为 tx_act,它也是每季度定义一次。我正在使用包 dse 和命令 dse::SS。

  # Define Matrix for Kalman filter

  f=array(c(0,0,0,1,1,0,0,1,1), c(3,3))
  h=array(c(1,0,0), c(1,3))
  g=array(c(-40,0,0), c(3, 1))
  q=array(c(2,0,0,0,0,2), c(3, 2))
  r=array(c(0), c(1,1))

  ss<-SS(F.=f, G=g, H=h, Q=q, R=r, names=list('tx_cho', 'tx_act'))

dim(tx_act) = 144,1 和 tx_cho

代码运行正确,但摘要(ss)似乎没有估计矩阵 g 的第一个值(设置为 -40)和矩阵 q 的两个值设置为 2。

如果这是相当具体的,我很抱歉,但我永远被这段代码所困扰,非常欢迎任何帮助。

T。

4

0 回答 0