`stanfit`

object`stanfit2array-method.Rd`

The samples (without warmup) included in a `stanfit`

object can be coerced to an `array`

, `matrix`

, or `data.frame`

.
Methods are also provided for checking and setting names and dimnames.

# S3 method for stanfit as.array(x, ...) # S3 method for stanfit as.matrix(x, ...) # S3 method for stanfit as.data.frame(x, ...) # S3 method for stanfit is.array(x) # S3 method for stanfit dim(x) # S3 method for stanfit dimnames(x) # S3 method for stanfit names(x) # S3 method for stanfit names(x) <- value

x | An object of S4 class |
---|---|

... | Additional parameters that can be passed to |

value | For the |

`as.array`

and `as.matrix`

can be applied to a `stanfit`

object to coerce the samples without warmup to `array`

or `matrix`

.
The `as.data.frame`

method first calls `as.matrix`

and then coerces
this matrix to a `data.frame`

.

The array has three named dimensions: iterations, chains, parameters.
For `as.matrix`

, all chains are combined, leaving a matrix of iterations
by parameters.

`as.array`

, `as.matrix`

, and `as.data.frame`

return an array,
matrix, and data.frame, respectively.

`dim`

and `dimnames`

return the dim and dimnames of the
array object that could be created, while `names`

returns the third
element of the `dimnames`

, which are the names of the margins of the
posterior distribution. The `names`

assignment method allows for
assigning more interpretable names to them.

`is.array`

returns `TRUE`

for `stanfit`

objects that include
samples; otherwise `FALSE`

.

When the `stanfit`

object does not contain samples, empty objects
are returned from `as.array`

, `as.matrix`

, `as.data.frame`

,
`dim`

, `dimnames`

, and `names`

.

if (FALSE) { ex_model_code <- ' parameters { real alpha[2,3]; real beta[2]; } model { for (i in 1:2) for (j in 1:3) alpha[i, j] ~ normal(0, 1); for (i in 1:2) beta[i] ~ normal(0, 2); # beta ~ normal(0, 2) // vectorized version } ' ## fit the model fit <- stan(model_code = ex_model_code, chains = 4) dim(fit) dimnames(fit) is.array(fit) a <- as.array(fit) m <- as.matrix(fit) d <- as.data.frame(fit) }