Warnings and summaries of sampler diagnostics. To instead get
the underlying values of the sampler diagnostics for each iteration and
chain use the $sampler_diagnostics()
method.
Currently parameter-specific diagnostics like R-hat and effective sample
size are not handled by this method. Those diagnostics are provided via
the $summary() method (using
posterior::summarize_draws()).
diagnostic_summary(
diagnostics = c("divergences", "treedepth", "ebfmi"),
quiet = FALSE
)(character vector) One or more diagnostics to check. The
currently supported diagnostics are "divergences, "treedepth", and
"ebfmi. The default is to check all of them.
(logical) Should warning messages about the diagnostics be
suppressed? The default is FALSE, in which case warning messages are
printed in addition to returning the values of the diagnostics.
A list with as many named elements as diagnostics selected. The
possible elements and their values are:
"num_divergent": A vector of the number of divergences per chain.
"num_max_treedepth": A vector of the number of times max_treedepth was hit per chain.
"ebfmi": A vector of E-BFMI values per chain.
CmdStanMCMC and the
$sampler_diagnostics() method
# \dontrun{
fit <- cmdstanr_example("schools")
#> Warning: 104 of 4000 (3.0%) transitions ended with a divergence.
#> See https://mc-stan.org/misc/warnings for details.
fit$diagnostic_summary()
#> Warning: 104 of 4000 (3.0%) transitions ended with a divergence.
#> See https://mc-stan.org/misc/warnings for details.
#> $num_divergent
#> [1] 47 52 3 2
#>
#> $num_max_treedepth
#> [1] 0 0 0 0
#>
#> $ebfmi
#> [1] 0.3009803 0.3412086 0.3406291 0.2824946
#>
fit$diagnostic_summary(quiet = TRUE)
#> $num_divergent
#> [1] 47 52 3 2
#>
#> $num_max_treedepth
#> [1] 0 0 0 0
#>
#> $ebfmi
#> [1] 0.3009803 0.3412086 0.3406291 0.2824946
#>
# }