Skip to contents

Calculate convergence metrics for the model run. Specifically calculates bulk and tail effective sample sizes (ess_bulk, ess_tail) and R-hat (rhat). Returns output very similar to get_summary().

Usage

get_convergence(model_output, variables = NULL)

Arguments

model_output

List. Model output generated by run_model().

variables

Character vector. Specific variables (e.g., "strata_raw[1]") or variable types (e.g., "strata_raw") for which to calculate metrics. If NULL (default) all variables are returned.

Value

Data frame of convergence metrics for all model variables. Contains variable_type, variable, ess_bulk, ess_tail, and rhat.

See also

Other model assessment functions: get_model_vars(), get_summary()

Examples

# Temporarily suppress convergence warning for legibility
# "The ESS has been capped to avoid unstable estimates."
opts <- options(warn = -1)

# Using the example model for Pacific Wrens

get_convergence(pacific_wren_model)
#> # A tibble: 11,150 × 5
#>    variable_type variable       rhat ess_bulk ess_tail
#>    <chr>         <chr>         <dbl>    <dbl>    <dbl>
#>  1 lp__          lp__          0.966     52.4     56.9
#>  2 strata_raw    strata_raw[1] 1.03      35.3     40.7
#>  3 strata_raw    strata_raw[2] 0.999     64.1     49.6
#>  4 strata_raw    strata_raw[3] 1.03      34.0     56.9
#>  5 strata_raw    strata_raw[4] 1.02      38.0     49.6
#>  6 strata_raw    strata_raw[5] 1.05      30.3     17.3
#>  7 strata_raw    strata_raw[6] 0.970     64.1     56.9
#>  8 strata_raw    strata_raw[7] 1.06      39.3     56.9
#>  9 strata_raw    strata_raw[8] 1.09      17.7     24.6
#> 10 strata_raw    strata_raw[9] 0.997     58.6     56.9
#> # ℹ 11,140 more rows
get_convergence(pacific_wren_model, variables = "strata_raw")
#> # A tibble: 19 × 5
#>    variable_type variable        rhat ess_bulk ess_tail
#>    <chr>         <chr>          <dbl>    <dbl>    <dbl>
#>  1 strata_raw    strata_raw[1]  1.03     35.3      40.7
#>  2 strata_raw    strata_raw[2]  0.999    64.1      49.6
#>  3 strata_raw    strata_raw[3]  1.03     34.0      56.9
#>  4 strata_raw    strata_raw[4]  1.02     38.0      49.6
#>  5 strata_raw    strata_raw[5]  1.05     30.3      17.3
#>  6 strata_raw    strata_raw[6]  0.970    64.1      56.9
#>  7 strata_raw    strata_raw[7]  1.06     39.3      56.9
#>  8 strata_raw    strata_raw[8]  1.09     17.7      24.6
#>  9 strata_raw    strata_raw[9]  0.997    58.6      56.9
#> 10 strata_raw    strata_raw[10] 0.980    63.9      49.6
#> 11 strata_raw    strata_raw[11] 1.02     36.1      21.0
#> 12 strata_raw    strata_raw[12] 1.14     20.5      22.4
#> 13 strata_raw    strata_raw[13] 1.01     50.6      43.9
#> 14 strata_raw    strata_raw[14] 1.15     15.1      51.1
#> 15 strata_raw    strata_raw[15] 1.01     41.8      32.6
#> 16 strata_raw    strata_raw[16] 1.02     58.1      21.4
#> 17 strata_raw    strata_raw[17] 1.01     51.2      49.6
#> 18 strata_raw    strata_raw[18] 1.25      8.90     17.3
#> 19 strata_raw    strata_raw[19] 1.06     26.2      21.4
get_convergence(pacific_wren_model, variables = "strata_raw[9]")
#> # A tibble: 1 × 5
#>   variable_type variable       rhat ess_bulk ess_tail
#>   <chr>         <chr>         <dbl>    <dbl>    <dbl>
#> 1 strata_raw    strata_raw[9] 0.997     58.6     56.9

# Restore warnings
options(opts)