3

output = RBugsfit(..., coda=T, ...)4 つのパラメーターの事後分布のサンプルとそれらのサンプル事後平均を含む mcmc.list オブジェクトを出力します。を使用しsummary()てサンプルの事後平均を確認できますが、サンプルの事後平均をoutputプログラムの変数に取得する方法を知りたいですか? ありがとう!

> summary(output)

Iterations = 201:3396
Thinning interval = 5 
Number of chains = 2 
Sample size per chain = 640 

1. Empirical mean and standard deviation for each variable,
   plus standard error of the mean:

           Mean        SD  Naive SE Time-series SE
beta  1.052e+00 3.189e-02 8.914e-04      9.185e-04
df    3.849e+00 2.916e-01 8.150e-03      1.516e-02
sigma 1.056e-02 2.504e-04 6.998e-06      1.000e-05
tau   8.990e+03 4.273e+02 1.194e+01      1.710e+01

2. Quantiles for each variable:

           2.5%       25%       50%       75%     97.5%
beta  9.891e-01 1.032e+00 1.052e+00 1.073e+00 1.113e+00
df    3.304e+00 3.650e+00 3.836e+00 4.042e+00 4.450e+00
sigma 1.004e-02 1.039e-02 1.055e-02 1.072e-02 1.105e-02
tau   8.197e+03 8.700e+03 8.977e+03 9.263e+03 9.917e+03

> str(output)
List of 2
 $ : mcmc [1:640, 1:4] 1.1 1.03 1.05 1.12 1.07 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : NULL
  .. ..$ : chr [1:4] "beta" "df" "sigma" "tau"
  ..- attr(*, "mcpar")= num [1:3] 201 3396 5
 $ : mcmc [1:640, 1:4] 1.03 1.04 1.06 1.06 1.07 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : NULL
  .. ..$ : chr [1:4] "beta" "df" "sigma" "tau"
  ..- attr(*, "mcpar")= num [1:3] 201 3396 5
 - attr(*, "class")= chr "mcmc.list"
4

1 に答える 1

1

私は通常、次の 2 つの方法を使用します。

1) 要約の使用 (出力がクラス mcmc.list であると仮定):

s <- summary(output)
m <- s$statistics[,"Mean"]

2)自分でやる:

mt <- as.matrix(output)
m <- apply(mt, 2, mean)
于 2015-02-03T11:12:32.487 に答える