Compute the basic effective sample size (ESS) estimate for a single variable
as described in Gelman et al. (2013). For practical applications, we strongly
recommend the improved ESS convergence diagnostics implemented in
ess_bulk()
and ess_tail()
.
ess_basic(x, ...) # S3 method for default ess_basic(x, split = TRUE, ...) # S3 method for rvar ess_basic(x, split = TRUE, ...)
x  (multiple options) One of:


...  Arguments passed to individual methods (if applicable). 
split  (logical) Should the estimate be computed on split chains? The
default is 
If the input is an array, returns a single numeric value. If any of the draws
is nonfinite, that is, NA
, NaN
, Inf
, or Inf
, the returned output
will be (numeric) NA
. Also, if all draws within any of the chains of a
variable are the same (constant), the returned output will be (numeric) NA
as well. The reason for the latter is that, for constant draws, we cannot
distinguish between variables that are supposed to be constant (e.g., a
diagonal element of a correlation matrix is always 1) or variables that just
happened to be constant because of a failure of convergence or other problems
in the sampling process.
If the input is an rvar
, returns an array of the same dimensions as the
rvar
, where each element is equal to the value that would be returned by
passing the draws array for that element of the rvar
to this function.
Andrew Gelman, John B. Carlin, Hal S. Stern, David B. Dunson, Aki Vehtari and Donald B. Rubin (2013). Bayesian Data Analysis, Third Edition. Chapman and Hall/CRC.
Other diagnostics:
ess_bulk()
,
ess_quantile()
,
ess_sd()
,
ess_tail()
,
mcse_mean()
,
mcse_quantile()
,
mcse_sd()
,
rhat_basic()
,
rhat()
,
rstar()
#> [1] 511.5225#> [,1] [,2] [,3] #> [1,] 680.2791 446.2236 481.9080 #> [2,] 446.2236 522.0755 418.0690 #> [3,] 481.9080 418.0690 636.2592