全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
3133 8
2012-09-04
在数据没有缺失的情况下,加载初始值都是没有问题的,也能迭代后输出结果。但是当部分数据用NA表示缺失后,在初始化过程中却会出现“this chain cotains uninitialized variables”,不知道什么原因?请教各位大神,谢谢!!

二维码

扫码加我 拉你入群

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

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

全部回复
2012-9-4 09:51:36
不是很了解 为了顶楼主
二维码

扫码加我 拉你入群

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

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

2012-9-4 09:55:03
lqx1900 发表于 2012-9-4 09:51
不是很了解 为了顶楼主
是我表述的不清楚吗?
二维码

扫码加我 拉你入群

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

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

2012-9-4 09:57:04
model
        {
                for( i in 1 : N ) {
                        for( j in 1 : T ) {
                                Y[i , j] ~ dnorm(mu[i , j],tau.c)
                                mu[i , j] <- alpha[i] + beta[i] * (x[j] - xbar)
                        }
                        alpha[i] ~ dnorm(alpha.c,alpha.tau)
                        beta[i] ~ dnorm(beta.c,beta.tau)
                }
                tau.c ~ dgamma(0.001,0.001)
                sigma <- 1 / sqrt(tau.c)
                alpha.c ~ dnorm(0.0,1.0E-6)          
                alpha.tau ~ dgamma(0.001,0.001)
                beta.c ~ dnorm(0.0,1.0E-6)
                beta.tau ~ dgamma(0.001,0.001)
                alpha0 <- alpha.c - xbar * beta.c       
        }
list(x = c(8.0, 15.0, 22.0, 29.0, 36.0), xbar = 22, N = 30, T = 5,       
                Y = structure(
                        .Data =   c(151, 199, 246, 283, 320,
                                                         145, 199, 249, 293, 354,
                                                         147, 214, 263, 312, 328,
                                                         155, 200, 237, 272, 297,
                                                         135, 188, 230, 280, 323,
                                                         159, 210, 252, 298, NA,
                                                         141, 189, 231, 275, NA,
                                                         159, 201, 248, 297, NA,
                                                         177, 236, 285, 350, NA,
                                                         134, 182, 220, 260, NA,
                                                         160, 208, 261, 313, NA,
                                                         143, 188, 220, NA, NA,
                                                         154, 200, 244, NA, NA,
                                                         171, 221, 270, NA, NA,
                                                         163, 216, 242, NA, NA,
                                                         160, 207, 248, NA, NA,
                                                         142, 187, 234, NA, NA,
                                                         156, 203, 243, NA, NA,
                                                         157, 212, 259, NA, NA,
                                                         152, 203, 246, NA, NA,
                                                         154, 205, 253, NA, NA,
                                                         139, 190, NA, NA, NA,
                                                         146, 191, NA, NA, NA,
                                                         157, 211, NA, NA, NA,
                                                         132, 185, NA, NA, NA,
                                                         160, NA, NA, NA, NA,
                                                         169, NA, NA, NA, NA,
                                                         157, NA, NA, NA, NA,
                                                         137, NA, NA, NA, NA,
                                                         153, NA, NA, NA, NA),
                                                .Dim = c(30,5)))
list(alpha = c(250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
                                                 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250),
                beta  = c(6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
                                                6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6),                       
                 alpha.c = 150, beta.c = 10,
                 tau.c = 1, alpha.tau = 1, beta.tau = 1)
二维码

扫码加我 拉你入群

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

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

2012-10-9 15:50:41
这是因为WinBUGS把缺失值也需要看成一个分布(具体分布我就不清楚了),所以需要初始值,你如果把缺失值设成monitor的话,可已得到缺失值的后验分布
二维码

扫码加我 拉你入群

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

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

2012-11-15 21:15:35
旺德福 发表于 2012-10-9 15:50
这是因为WinBUGS把缺失值也需要看成一个分布(具体分布我就不清楚了),所以需要初始值,你如果把缺失值设成 ...
谢谢!!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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