全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 winbugs及其他软件专版
5154 10
2013-12-11
model
   {
       for( i in 1 : N ) {
           WSG[i]~dnorm(mu,tau)
           tau~dgamma(r,s)
           mu~dnorm(0.5,1000000)
                  }
        r~dnorm(0.0,1.0E-6)
        s~dnorm(0.0,1.0E-6)
        sigma <- 1 / sqrt(tau)
   
    }

Data
   list(WSG=c(0.976,0.946,0.964,0.886,1.3075), N=5)   
inits
   list(r=0.5,s=100000)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-12-11 21:10:07
你的程序问题很多,以致于我不知如何改,问题如下:
1. tau, mu 在for的循环内,就会使tau, mu重复被定义5遍,导致程序无法运行,所以需要将它们的定义移到循环以外。
2. mu~dnorm(0.5, 1000000)这样的定义Mu,使Mu服从MEAN=0.5,VAR=1E-6的正态分布,跟定义MU为常数0.5没什么区别。当然不影响程序运行。
3. Tau是GAMMA分布,GAMMA分布的参数要求为正数,即r>0, s>0。而你定义r, s 是正态(MEAN=0),可以为负,所以程序运行会出错;
4.s=100000这个初始值与s符合MEAN=0,VAR=1000000(即标准差=1000)的分布不匹配,即符合这样分布的s不可能取到这么大的正数,这个初值设定很奇怪。
5. 就5个数据,你的模型却那么复杂。数据量不太够,估计出来的意义不大。当然,我改了上面的4个毛病后,还是能运行的。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-12-18 21:15:55
TimeT 发表于 2013-12-11 21:10
你的程序问题很多,以致于我不知如何改,问题如下:
1. tau, mu 在for的循环内,就会使tau, mu重复被定义5 ...
求助TimeT大神!!!
我想对BDI指数建立SV模型。用的是论坛里下载的程序,但是Data和INITIAL VALUES就有点摸不着头脑了。
现在Data这里是:list(N=538,y = c(-0.000680522,0.000476216,-0.002995338,……),y用的是BDI的收益率。
INITIAL VALUES是list(itau2 = 7, mu = 0, phi1= 0.975)。
模型正确,成功导入数据,也compile了,gen inits了。
可是到了inference的sample monitor tool,不能设置node,提示:monitor could not be set。
麻烦大神告知,这是怎么回事!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-12-18 22:00:08
陈金海 发表于 2013-12-18 21:15
求助TimeT大神!!!
我想对BDI指数建立SV模型。用的是论坛里下载的程序,但是Data和INITIAL VALUES就有 ...
我算不上大神。你的问题不太完整,没想出如何回答。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-12-19 12:54:54
TimeT 发表于 2013-12-11 21:10
你的程序问题很多,以致于我不知如何改,问题如下:
1. tau, mu 在for的循环内,就会使tau, mu重复被定义5 ...
我按照你的要求,重新修改了下,现在能运行,麻烦你看下还有什么错误没?
model
   {
       for( i in 1 : N ) {
           WSG~dnorm(mu,tau)I(0.15,1.3)
           
                  }
        mu~dnorm(mu0,tau0)I(0.15,1.3)
      
        tau~dgamma(r,s)
        r~dnorm(0.0,1.0E+6)I(0.000001,)
        s~dnorm(0.0,1.0E+6)I(0.000001,)
        sigma <- 1 / sqrt(tau)
   
    }


Data
   list(WSG=c(0.976,0.946,0.964,0.886,1.3075), N=5, mu0=0.5,tau0=1.0E+6)   

inits
   list(tau=1,mu=1,r=0.1,s=0.1)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-12-19 23:57:40
xuyaozhan 发表于 2013-12-19 12:54
我按照你的要求,重新修改了下,现在能运行,麻烦你看下还有什么错误没?
model
   {
第三行的 WSG~dnorm(... 应该是:WSG后面有 [ i ]
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群