全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 经管百科 爱问频道
4483 4
2014-03-04
请问有谁用winbugs 标定过随机系数模型?
为什么我检验模型时总出现invalid or unexpected token scanned?具体模型如下:
model
  {
   for( i in 1 : N ) {
   for( j in 1 : T ) {
Y[i , j]<-mu+r[i,0]+(mu1+r[i,1]) * x1[i,j]+(mu2+r[i,2]) * x2[i,j]+(mu3+r[i,3]) *x3[i,j]+(mu4+r[i,4])*x4[i,j]+(mu5+r[i,5])*x5[i,j]+(mu6+r[i,6])*x6[i,j]+(mu7+r[i,7])*x7[i,j]+(mu8+r[i,8])*T[i,j]+e[i,j]
    r[i] ~ dmnorm(0.0,sigmma)
    e[i,j]~dnorm(0.0,derta)
   }
    mu ~ dnorm(u0,vu)
       sigmma ~dwish (c,sigmma0)
       derta~dgamma(a,b)
   
   }
   }
求问哪里出现错误了?
二维码

扫码加我 拉你入群

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

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

全部回复
2014-3-4 22:33:50
首先,我声明我没读你的模型(抱歉,太多东西了)。不过对你的问题invalid or unexpected token sceanned倒是有几点可说,希望能帮到你:
- 如果model那算第一行,那么你的CODE中的第6行最后一个+号前面是T[i,j],这是程序第1个报错的地方,T从第4行看是一个常数,不是个数列。
- 第7行r[i]变成一维数列,但需要是个两维数列,因为你在前面提到r是都是两维的
- 还是第7行,dmnorm还是dnorm?如果是前者,那是多维正态分布,那么参数不能是两个数(0.0,sigmma),需是两个数组吧。
改了这些后,至少CHECK MODEL能通过。能否运行不知道,因为我没去试图读通你的程序。
二维码

扫码加我 拉你入群

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

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

2014-3-10 00:48:29
非常感谢你啊,我按照你说的方法改了 ,现在显示expected  a comma,这又是什么意思啊?
另外想问问高手,winbugs有没有什么什么好的参考或者学习的中文资料啊,我现在看着英文的很是吃劲啊……
二维码

扫码加我 拉你入群

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

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

2014-3-11 22:21:12
TimeT 发表于 2014-3-4 22:33
首先,我声明我没读你的模型(抱歉,太多东西了)。不过对你的问题invalid or unexpected token sceanned倒 ...
非常感谢你啊,我按照你说的方法改了 ,现在显示expected  comma,这又是什么意思啊?模型现在修改如下:
model
                {
                        for( i in 1 : N ) {
                        for( j in 1 : T ) {
Y[i , j]<-mu0+r0[ i]+(mu1+r1) * x1[ i,j]+(mu2+r2[i ]) * x2[i,j]+(mu3+r3[ i]) *x3[i,j]+(mu4+r4)*x4[i,j]+(mu5+r5)*x5[i,j]+(mu6+r6)*x6[i,j]+(mu7+r7)*x7[i,j]+(mu8+r8)*TIME[i,j]+e
r[r0,r1,r2,r3,r4,r5,r6,r7,r8] ~ dmnorm(0.0 ,T[ , ])
e~dnorm(mu.e,prec.e)
                }
T[ , ] ~dwish (R[ , ],v)
                        }
                       
                        mu.e<-0.0  
                        prec.e~dgamma(0.001,0.001)
                        sigma.e <- 1 / sqrt(prec.e)
                        mu0 ~ dnorm(0,1.0E-6)       
                        mu1 ~ dnorm(0,1.0E-6)
                        mu2 ~ dnorm(0,1.0E-6)
                        mu3 ~ dnorm(0,1.0E-6)
                                mu4 ~ dnorm(0,1.0E-6)
                                                mu5 ~ dnorm(0,1.0E-6)
                        mu6 ~ dnorm(0,1.0E-6)
                        mu7 ~ dnorm(0,1.0E-6)
                        mu8 ~ dnorm(0,1.0E-6)
                       
                        }
我这是一个随机系数模型。另外,我还有一些问题想请教您。如果是多个变量服从多元正态分布,那么这个多元正太分布的均值是一个标量,还是向量啊?还有我这行代码r[r0,r1,r2,r3,r4,r5,r6,r7,r8] ~ dmnorm(0.0 ,T[ , ]),想表示的是r0到r8这9个变量服从多元正态分布,为什么总提示expected  comma?
另外我想问问有没有什么比较好的参考书啊,我现在看着全英文的感觉比较吃力,老师又催的很紧。
二维码

扫码加我 拉你入群

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

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

2014-3-15 15:52:51
zhmz5625280 发表于 2014-3-11 22:21
非常感谢你啊,我按照你说的方法改了 ,现在显示expected  comma,这又是什么意思啊?模型现在修改如下: ...
我想dmnorm(0.0 ,T[ , ])应该不合语法,参数应该都是数组,第1个参数不能是0.0吧
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

分享

扫码加好友,拉您进群