Compute the Monte Carlo standard error for the mean (expectation) of a single variable.
mcse_mean(x, ...) # S3 method for default mcse_mean(x, ...) # S3 method for rvar mcse_mean(x, ...)
If the input is an array, returns a single numeric value. If any of the draws
is non-finite, that is,
-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)
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.
mu <- extract_variable_matrix(example_draws(), "mu") mcse_mean(mu) #>  0.1504394 d <- as_draws_rvars(example_draws("multi_normal")) mcse_mean(d$Sigma) #> [,1] [,2] [,3] #> [1,] 0.006331065 0.009478331 0.01283981 #> [2,] 0.009478331 0.019579138 0.02346471 #> [3,] 0.012839814 0.023464711 0.03748603