extras

`extras` provides helper functions for Bayesian analyses.

In particular it provides functions to numericise R objects (coerce to numeric objects), summarise MCMC (Monte Carlo Markov Chain) samples and calculate deviance residuals as well as R translations of some BUGS (Bayesian Using Gibbs Sampling), JAGS (Just Another Gibbs Sampler), STAN and TMB (Template Model Builder) functions.

Installation

To install the developmental version from GitHub

``````# install.packages("remotes")
remotes::install_github("poissonconsulting/extras")``````

Demonstration

Numericise R Objects

Atomic vectors, matrices, arrays and data.frames of appropriate classes can be converted to numeric objects suitable for Bayesian analysis using the `numericise()` (and `numericize()`) function.

``````library(extras)
#>
#> Attaching package: 'extras'
#> The following object is masked from 'package:stats':
#>
#>     step
numericise(
data.frame(logical = c(TRUE, FALSE),
factor = factor(c("blue", "green")),
Date = as.Date(c("2000-01-01", "2000-01-02")),
hms = hms::as_hms(c("00:00:02", "00:01:01"))
)
)
#>      logical factor  Date hms
#> [1,]       1      1 10957   2
#> [2,]       0      2 10958  61``````

Summarise MCMC Samples

The `extras` package provides functions to summarise MCMC samples like `svalue()` which gives the surprisal value (Greenland, 2019)

``````set.seed(1)
x <- rnorm(100)
svalue(rnorm(100))
#> [1] 0.3183615
svalue(rnorm(100, mean = 1))
#> [1] 1.704015
svalue(rnorm(100, mean = 2))
#> [1] 3.850857
svalue(rnorm(100, mean = 3))
#> [1] 5.073249``````

R translations

The package also provides R translations of `BUGS` (and `JAGS`) functions such as `pow()` and `log<-`.

``````pow(10, 2)
#> [1] 100

mu <- NULL
log(mu) <- 1
mu
#> [1] 2.718282``````

References

Greenland, S. 2019. Valid P -Values Behave Exactly as They Should: Some Misleading Criticisms of P -Values and Their Resolution With S -Values. The American Statistician 73(sup1): 106–114. https://doi.org/10.1080/00031305.2018.1529625.