0

私は最近、OpenBUGS と R を使用してベイジアン モデリングを試み始めましR2OpenBUGSた。

私は David Eagles によるワインと OpenBUGS をインストールするための素晴らしいリンクをたどり、そこに投稿された学校の例はうまくいきました。

次に、持っていたコードを実行しようとしましたがthe model is syntactically correct、データが正しく読み込まれていないことを伝えた後、エラーが発生し続けました。

数日間のトラブルシューティングの後、データファイルが特定の長さを超えると、トップビット (listデータをロードするために OpenBUGS で従来ハイライトする場所) が失われ、OpenBUGS でデータをロードできないようです。

リストセクションが切り取られた、読み込まれたデータを含む OpenBUGS プログラムのスクリーンショット

list{この図は、data.txt ファイルの上部に、モデルを実行しようとするすべての試みを基本的に停止している がなくなったことを示しています。

これを確認するために、ポイント数を 1000 に設定してから 100 に設定する単純な線形回帰の例を実行しました。

 # Load in paths for running OpenBUGS through wine
source("/Users/dp323/Desktop/R/scripts/Where_is_my_OpenBUGS.R")  

# set up model
linemodel <- function() {
  for (j in 1:N) {
    Y[j] ~ dnorm(mu[j], tau)  ## Response values Y are Normally distributed
    mu[j] <- alpha + beta * (x[j] - xbar)  ## linear model with x values centred
  }
  ## Priors
  alpha ~ dnorm(0, 0.001)
  beta ~ dnorm(0, 0.001)
  tau ~ dgamma(0.001, 0.001)
  sigma <- 1/sqrt(tau)
}

# set up data ####
linedata <- list(Y = c(1:100), x = c(1:100), N = 100, xbar = 3)

# set initial values ####
lineinits <- function() {
  list(alpha = 1, beta = 1, tau = 1)
}

# run bugs ####
lineout <- bugs(data = linedata, inits = lineinits, parameters.to.save = c("alpha", "beta", "sigma"), model.file = linemodel, n.chains = 1, n.iter = 10000, OpenBUGS.pgm = OpenBUGS.pgm, WINE = WINE, WINEPATH = WINEPATH, useWINE = T, debug = T)

の場合、モデルはうまく動作linedata <- list(Y = c(1:100), x = c(1:100), N = 100, xbar = 3)しますが、 の場合、データの読み込み段階で崩壊しlinedata <- list(Y = c(1:1000), x = c(1:1000), N = 1000, xbar = 3)ます。

wine と OpenBUGS のデータ ファイル サイズの制限について Google 検索を使い果たしましたが、役立つものは何も見つかりませんでした。

何を試すか、どこから始めるか、これを以前に経験したことについて何か提案はありますか?

4

0 に答える 0