1

R でデータ セットを構築し、それを OpenBUGS にロードしてベイジアン分析を実行しようとしていますが、データのロードに問題があります。

ここに私のRコードがあります:

library(BRugs)
y <- c(16,9,10,13,19,20,18,17,35,55)
m <- c(74,99,58,70,122,77,104,129,308,119)
bugsData(list(y=y, n=m), file="Assignment1Q2.txt")

これはすべて正常に機能します。次に、これを OpenBUGS にロードしようとしましたが、ファイルを選択した後に「データのロード」をクリックすると、「数値または NA が必要です」というエラーが表示されました。

n= c (7.4...)

私はこれに混乱しています、なぜそこに数字が期待されるのでしょうか? 情報「m」を格納するためにRでベクトルを作成する必要がありますが、それはOpenBUGSのエラーであることがわかります(ただし、y = c(...)を受け入れるyベクトルのエラーではありません)。

誰か助けてくれませんか?

ありがとう!

4

1 に答える 1

1

理解した!その理由は、私の OpenBUGS コードで、n の値が 1 つあることだけを伝え (したがって、n の値のベクトルを期待していなかった)、それを修正する必要があったからです。

から:

for (i in 1:10){
  y[i] ~ dbin(p,n)
  }

に:

for (i in 1:10){
  y[i] ~ dbin(p,n[i])
  }
于 2020-04-20T05:40:30.593 に答える