R

时间:2016-03-02 09:43:18

标签: r time-series var markov

我尝试使用命令 msvar 估算 R 中的马尔可夫切换 VAR 。这是我两个时间序列的前10个条目。我有 798 。当我尝试运行它时,我收到一条错误消息

a <- c(1.998513, 1.995302, 2.030693, 2.122130, 2.236770, 2.314639, 2.365214, 2.455784, 2.530696, 2.596537)
b <- c(0.6421369, 0.6341437, 0.6494933, 0.6760939, 0.7113511, 0.7173038, 0.7250545, 0.7812490, 0.7874657, 0.8275209)
x <- matrix (NA,10,2)
x[,1] <- a
x[,2] <- b
time.seriesx <- ts(x)
markov.switchingx <- msvar(time.seriesx, p = 2, h = 2, niterblkopt = 10)

我收到的错误消息如下:

  

optim中的错误(par = c(beta0.it),fn = llf.msar,Y = Yregmat,X =   Xregmat,&#39; vmmin&#39;中的初始值不是有限的

任何可以帮助我的人?感谢

1 个答案:

答案 0 :(得分:0)

我认为你必须先运行类似日志的功能。我得到了同样的错误,但是当我这样做时,它确实有效。 我不确定,但我希望这可以帮到你:(我使用了我的数据所以不要注意&#34; M1euro&#34;)

library(base)

data <- data.matrix(M1euro, rownames.force = NA)

library(stats)

ss1<-ts(data, frequency=12, start=c(2007,1), end=c(2016,4))

class(ss1)

length(ss1)

ss <- na.approx(ss1,na.rm=F,rule=2)

ss

class(ss)

library(MSBVAR)

require(graphics)

set.seed(1)