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: 10,495 × 5
#>    variable_type variable       rhat ess_bulk ess_tail
#>    <chr>         <chr>         <dbl>    <dbl>    <dbl>
#>  1 lp__          lp__          1.04      25.7     49.6
#>  2 strata_raw    strata_raw[1] 1.01      61.6     37.7
#>  3 strata_raw    strata_raw[2] 0.985     29.4     49.6
#>  4 strata_raw    strata_raw[3] 1.02      35.8     49.6
#>  5 strata_raw    strata_raw[4] 1.15      50.6     56.9
#>  6 strata_raw    strata_raw[5] 1.03      30.0     56.9
#>  7 strata_raw    strata_raw[6] 1.07      31.6     22.4
#>  8 strata_raw    strata_raw[7] 0.992     36.2     49.6
#>  9 strata_raw    strata_raw[8] 1.04      28.4     49.6
#> 10 strata_raw    strata_raw[9] 0.973     53.0     17.3
#> # ℹ 10,485 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.01      61.6     37.7
#>  2 strata_raw    strata_raw[2]  0.985     29.4     49.6
#>  3 strata_raw    strata_raw[3]  1.02      35.8     49.6
#>  4 strata_raw    strata_raw[4]  1.15      50.6     56.9
#>  5 strata_raw    strata_raw[5]  1.03      30.0     56.9
#>  6 strata_raw    strata_raw[6]  1.07      31.6     22.4
#>  7 strata_raw    strata_raw[7]  0.992     36.2     49.6
#>  8 strata_raw    strata_raw[8]  1.04      28.4     49.6
#>  9 strata_raw    strata_raw[9]  0.973     53.0     17.3
#> 10 strata_raw    strata_raw[10] 0.970     64.1     56.9
#> 11 strata_raw    strata_raw[11] 1.07      25.2     56.9
#> 12 strata_raw    strata_raw[12] 0.994     64.1     56.9
#> 13 strata_raw    strata_raw[13] 1.02      46.5     18.9
#> 14 strata_raw    strata_raw[14] 1.11      64.1     49.6
#> 15 strata_raw    strata_raw[15] 0.996     64.1     36.3
#> 16 strata_raw    strata_raw[16] 0.999     57.1     56.9
#> 17 strata_raw    strata_raw[17] 0.997     34.2     23.5
#> 18 strata_raw    strata_raw[18] 1.04      39.1     17.3
#> 19 strata_raw    strata_raw[19] 1.05      26.5     49.6
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.973     53.0     17.3

# Restore warnings
options(opts)