Extract a tidy output from an mcmc.list

tidy_mcmc(x, spread = FALSE, include_constant = TRUE)

Arguments

x

An mcmc.list object

spread

Boolean, spread the parameters into separate columns?

include_constant

Boolean, include constant parameters as proper parameter traces?

Value

A tidy table containing one iteration per row

Examples

fit <- lapply(1:4, function(i) {
  z <- matrix(rnorm(200), ncol = 2)
  colnames(z) <- c("alpha", "beta")
  coda::as.mcmc(z)
})
fit <- coda::as.mcmc.list(fit)
tidy_mcmc(fit)
#> # A tibble: 400 × 3
#>    mcmc.chain mcmc.iteration mcmc.parameters
#>         <int>          <int> <list>         
#>  1          1              1 <dbl [2]>      
#>  2          1              2 <dbl [2]>      
#>  3          1              3 <dbl [2]>      
#>  4          1              4 <dbl [2]>      
#>  5          1              5 <dbl [2]>      
#>  6          1              6 <dbl [2]>      
#>  7          1              7 <dbl [2]>      
#>  8          1              8 <dbl [2]>      
#>  9          1              9 <dbl [2]>      
#> 10          1             10 <dbl [2]>      
#> # ℹ 390 more rows
tidy_mcmc(fit, spread = TRUE)
#> # A tibble: 400 × 4
#>    mcmc.chain mcmc.iteration   alpha    beta
#>         <int>          <int>   <dbl>   <dbl>
#>  1          1              1 -0.854  -0.124 
#>  2          1              2  0.0397  0.457 
#>  3          1              3  1.72   -1.36  
#>  4          1              4  0.334   0.545 
#>  5          1              5  0.516   0.682 
#>  6          1              6 -0.637   0.215 
#>  7          1              7  1.45   -0.0455
#>  8          1              8 -0.428   1.01  
#>  9          1              9 -0.345   0.215 
#> 10          1             10 -0.194   0.381 
#> # ℹ 390 more rows