`extras`

provides helper functions for Bayesian analyses.

In particular it provides functions to numericise R objects and summarise MCMC samples as well as R translations of `BUGS`

(and `JAGS`

) 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)
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.

## Contribution

Please report any issues.

Pull requests are always welcome.

## Code of Conduct

Please note that the extras project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.