mcmc.listからplot.bugsおよびplot.jagsによって生成されるプロットと同様のプロットをどのように生成できますか?[閉まっている]


9

Rは、関数R2WinBUGS :: bugsR2jags:jagsによって生成されたオブジェクトbugsjagsオブジェクトから素晴らしい要約プロットを出力できるようです。

しかし、私はrjagsパッケージを使用しています。結果をrjags::coda.samples使用R2WinBUGS::plot.mcmc.listして関数の結果をプロットしようとすると、各パラメーターの診断プロット(パラメーター密度、チェーン時系列、自己相関)になります。

以下は、Andrew Gelmanのチュートリアル「RからのWinBuugsとOpenBugsの実行」から作成したいプロットのタイプです。これらはを使用して作成されましたplot.pugs

問題はplot.bugsbugsオブジェクトを引数としてplot.mcmc.list受け取り、の出力を受け取ることですcoda.samples

次に例を示します(からcoda.samples):

 library(rjags)
 data(LINE)
 LINE$recompile()
 LINE.out <- coda.samples(LINE, c("alpha","beta","sigma"), n.iter=1000)
 plot(LINE.out)

私が必要なのは

  • によって生成されたものと同様の、情報が豊富な、1ページの要約プロットを生成する方法 plot.bugs
  • LINE.outバグオブジェクトに変換する関数または

ここに画像の説明を入力してください

回答:


2

答えがないので、私は少なくともこれまでに得たものを投稿します:

パッケージas.bugs.array内の関数は、R2WinBUGSこの目的のために作成されました。ドキュメント(?as.bugs.array)によると:

バグからではない可能性があるマルコフ連鎖シミュレーションの結果をバグオブジェクトに変換する関数。主にplot.bugsで結果を表示するために使用されます。

したがって、LINE.out正しい変数をプロットしませんが、例からからプロットを取得することは可能です。

plot(as.bugs.array(sims.array = as.array(LINE.out)))        

を変換する正しい方法を決定するには少し手間がかかります。またLINE.out、からのLINE.samplesオブジェクトexample(jags.samples)の方が簡単に開始できる場合があります。


0

以下は私にとってはうまくいくようです:

require(R2jags)
m <-jags(data=d,inits=i,pars,n.iter=1000,n.chains=3,model.file="foo.txt",DIC=F)
m <- autojags(m)
plot(m)

これは再現可能な例です:

example(jags)
plot(jagsfit)

1
それは役に立つ手がかりですが、mcmc.list(私が知る限り)で始まる問題を解決しません。
David LeBauer、2007
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.