jagsposteriors: Print results for specified rjags or mcmc.list parameters

Description Usage Arguments Value See Also Examples

View source: R/jagsposteriors.R

Description

Prints results for rjags or mcmc.list parameters, which are specified with a regular expression, or by exact name.

Usage

1
2
jagsposteriors(x, params, regex = FALSE, invert = FALSE,
  probs = c(0.025, 0.25, 0.5, 0.75, 0.975), signif, ...)

Arguments

x

The rjags, rjags.parallel, or mcmc.list object for which results will be printed.

params

Character vector or a regular expression pattern. The parameters for which results will be printed (unless invert is FALSE, in which case results for all parameters other than those given in params will be returned). If regex is FALSE, only those parameters that match params exactly will be returned. If regex is TRUE, param should be a character string giving the regular expression pattern to be matched.

regex

Logical. If regex is TRUE, then param is expected to be a single string giving a text pattern to be matched. Parameters with names matching the pattern will be returned (unless invert is TRUE, which results in all parameters that do not match the pattern being returned). Text pattern matching uses regular expressions (regex).

invert

Logical. If invert is TRUE, only those parameters that do not match elements of params will be returned.

probs

A numeric vector of probabilities within range [0, 1], representing the sample quantiles to be calculated and returned.

signif

If supplied, all columns other than n.eff will have their values rounded such that the most extreme value has the specified number of significant digits.

...

Additional arguments accepted by grep, e.g. perl=TRUE, to allow look-around pattern matching.

Value

A matrix with one row for each parameter that matches param, and one column for each of mean, sd, percentiles 2.5, 25, 50, 75, and 97.5. In addition, if x is an rjags object, columns for Rhat and neff are returned.

See Also

rhats for simplified rhat output, rearray for recovering array structure of vector-valued parameters.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
## Data
N <- 100
temp <- runif(N)
rain <- runif(N)
wind <- runif(N)
a <- 0.13
beta.temp <- 1.3
beta.rain <- 0.86
beta.wind <- -0.44
sd <- 0.16
y <- rnorm(N, a + beta.temp*temp + beta.rain*rain + beta.wind*wind, sd)
dat <- list(N=N, temp=temp, rain=rain, wind=wind, y=y)

### jags example
library(R2jags)

## Model
M <- function() {
  for (i in 1:N) {
    y[i] ~ dnorm(y.hat[i], sd^-2)
    y.hat[i] <- a + beta.temp*temp[i] + beta.rain*rain[i] + beta.wind*wind[i]
    resid[i] <- y[i] - y.hat[i]
  }
  sd ~ dunif(0, 100)
  a ~ dnorm(0, 0.0001)
  beta.temp ~ dnorm(0, 0.0001)
  beta.rain ~ dnorm(0, 0.0001)
  beta.wind ~ dnorm(0, 0.0001)
}

## Fit model
jagsfit <- jags(dat, inits=NULL,
                parameters.to.save=c('a', 'beta.temp', 'beta.rain',
                                     'beta.wind', 'sd', 'resid'),
                model.file=M, n.iter=10000)

## Output
# model summary
jagsfit

# Results for beta.rain only
jagsposteriors(x=jagsfit, param='beta.rain')

# Results for 'a' and 'sd' only
jagsposteriors(x=jagsfit, param=c('a', 'sd'))
jagsposteriors(x=jagsfit, param=c('a', 'sd'),
            probs=c(0.01, 0.025, 0.1, 0.25, 0.5, 0.75, 0.9, 0.975))

# Results for all parameters including the string 'beta'
jagsposteriors(x=jagsfit, param='beta', regex=TRUE)

RafaelSdeSouza/nuclear documentation built on Aug. 11, 2019, 12:31 a.m.