楼主: anemia1001
5556 1

[问答] Bayesian analysis的openbugs命令:错误于FUN(X[[1L]], ...) : 第一个参数不对 [推广有奖]

  • 0关注
  • 0粉丝

初中生

23%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
26 点
帖子
3
精华
0
在线时间
23 小时
注册时间
2014-10-8
最后登录
2014-10-11

楼主
anemia1001 发表于 2014-10-9 09:10:25 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
我最近正在对一组生物学数据进行Bayesian分析。我是按照一篇论文提供的语言去做的,然而到了openbugs这一步,总是过不去,提示“错误于FUN(X[[1L]], ...) : 第一个参数不对”。因为刚刚接触到Bayesian分析,一时难以搞清楚到底哪部出错了。请各位老师帮忙看一下问题出在哪里?非常感谢!

R命令如下:

library(R2WinBUGS)

data <- list(n=20,neurogen = data01$neurogen,behave = data01$reversals,cond = data01$condition)
model <- function(){
for(i in 1:n)
{
neurogen ~ dnorm(mean.neurogen, s2.neurogen)
mean.neurogen <- a1 + B1*cond
behave ~ dnorm(mean.behave, s2.behave)
mean.behave <- a2 + B4*cond + B5*neurogen
}
a1 ~ dnorm(0, 1.0E-5)
a2 ~ dnorm(0, 1.0E-5)
B1 ~ dnorm(0, 1.0E-5)
B4 ~ dnorm(0, 1.0E-5)
B5 ~ dnorm(0, 1.0E-5)
s2.neurogen ~ dgamma(0.001, 0.001)
s2.behave ~ dgamma(0.001, 0.001)
med.eff <- B1*B5
}

write.model(model, "model.txt")
parms <- c("a1","a2","B1","B4","B5","s2.neurogen","s2.behave","med.eff")
inits <- list(
list(a1=rnorm(1), a2=rnorm(1), B1=rnorm(1), B4=rnorm(1,0,0.5),
B5=rnorm(1), s2.neurogen=rnorm(1,1,0.05), s2.behave=rnorm(1,1,0.05)),
list(a1=rnorm(1), a2=rnorm(1), B1=rnorm(1), B4=rnorm(1,0,0.5),
B5=rnorm(1), s2.neurogen=rnorm(1,1,0.05), s2.behave=rnorm(1,1,0.05)),
list(a1=rnorm(1), a2=rnorm(1), B1=rnorm(1), B4=rnorm(1,0,0.5),
B5=rnorm(1), s2.neurogen=rnorm(1,1,0.05), s2.behave=rnorm(1,1,0.05))
)

library(R2OpenBUGS)
m1 <- openbugs(model.file="model.txt", data=data, inits=inits,
parameters.to.save=parms,
n.chains=3, n.iter=500000, n.thin=10)


R运行后的显示如下
> library(R2OpenBUGS)

载入程辑包:‘R2OpenBUGS’

The following object(s) are masked from ‘package:R2WinBUGS’:

    as.bugs.array, attach.all, attach.bugs, bugs, bugs.data, bugs.log, detach.all, detach.bugs, monitor, read.bugs, write.model

警告信息:
程辑包‘R2OpenBUGS’是用R版本3.1.1 来建造的
> m1 <- openbugs(model.file="model.txt", data=data, inits=inits,
+ parameters.to.save=parms,
+ n.chains=3, n.iter=500000, n.thin=10)
Loading required package: BRugs
Welcome to BRugs connected to OpenBUGS version 3.2.3
model is syntactically correct
错误于FUN(X[[1L]], ...) : 第一个参数不对
此外: 警告信息:
1: package ‘BRugs’ was built under R version 3.1.1
2: In readChar(modelFile, 10^3) : 在non-UTF-8 MBCS语言环境里只能读取字节
二维码

扫码加我 拉你入群

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

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

关键词:Bayesian Analysis openbugs Analysi Analys function library 生物学 论文

沙发
windlove 发表于 2014-10-17 10:26:33
所有的数据都需要一个index,
比如
for (i in 1:n) {
y[i] = a + b*x[i]
}

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-22 13:03