Learn R Programming

⚠️There's a newer version (0.8.0) of this package.Take me there.

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.

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.

Copy Link

Version

Install

install.packages('extras')

Monthly Downloads

678

Version

0.5.0

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Joe Thorley

Last Published

October 30th, 2022

Functions in extras (0.5.0)

dev_gamma_pois

Gamma-Poisson Deviances
extras-package

extras: Helper Functions for Bayesian Analyses
dev_pois_zi

Zero-Inflated Poisson Deviances
kurtosis

Kurtosis
dbern

Bernoulli Distribution
chk_index

Check Index
log_lik_binom

Binomial Log-Likelihood
log_lik_pois_zi

Zero-Inflated Poisson Log-Likelihood
log_lik_bern

Bernoulli Log-Likelihood
log_odds<-

Inverse Log Odds Transformation
logit

Logistic Transformation
chk_pars

Check Parameter Names
chk_indices

Check Indices
log<-

Log Transformation
dev_gamma_pois_zi

Zero-Inflated Gamma-Poisson Deviances
log_lik_pois

Poisson Log-Likelihood
log_lik_norm

Normal Log-Likelihood
ran_pois_zi

Zero-Inflated Poisson Random Samples
ran_binom

Binomial Random Samples
ran_bern

Bernoulli Random Samples
lower

Lower Credible Limit
ran_pois

Poisson Random Samples
dev_binom

Binomial Deviances
dev_bern

Bernoulli Deviances
odds_ratio2

Odds Ratio2
res_pois

Poisson Residuals
res_norm

Normal Residuals
par_pattern

Parameter Pattern
ran_lnorm

Log-Normal Random Samples
xtr_mean

Mean
pow

Power
phi

Phi
variance

Variance
ran_gamma_pois_zi

Zero-Inflated Gamma-Poisson Random Samples
dev_norm

Normal Deviances
svalue

Surprisal Value
dev_pois

Poisson Deviances
dev_lnorm

Log-Normal Deviances
dev_neg_binom

Negative Binomial Deviances
upper

Upper Credible Limit
fill_na

Fill Missing Values
ilogit

Inverse Logistic Transformation
inv_logit

Inverse Logistic Transformation
odds_ratio

Odds Ratio
odds

Odds
ilog

Inverse Log Transformation
skewness

Skewness
odds<-

Inverse Odds Transformation
numericise

Numericise (or Numericize)
log_odds_ratio

Log-Odds Ratio
proportional_change2

Proportional Change2
proportional_change

Proportional Change
log_odds

Log Odds
proportional_difference

Proportional Difference
proportional_difference2

Proportional Difference2
step

Step
xtr_median

Median
sextreme

Extreme Surprisal
res_pois_zi

Zero-Inflated Poisson Residuals
ran_norm

Normal Random Samples
zscore

Z-Score
ran_neg_binom

Negative Binomial Random Samples
zeros

Zeros
fabs

Absolute
fill_all

Fill All Values
xtr_sd

Standard Deviation
log_lik_gamma_pois

Gamma-Poisson Log-Likelihood
pvalue

Bayesian P-Value
res_gamma_pois

Gamma-Poisson Residuals
logit<-

Logistic Transformation
ran_gamma_pois

Gamma-Poisson Random Samples
ran_gamma

Gamma Random Samples
log_lik_gamma_pois_zi

Zero-Inflated Gamma-Poisson Log-Likelihood
log_odds_ratio2

Log Odds Ratio2
pzeros

Proportion of Zeros
invlogit

Inverse Logistic Transformation
inv_odds

Inverse Odds
log_lik_neg_binom

Negative Binomial Log-Likelihood
log_lik_lnorm

Log-Normal Log-Likelihood
params

Parameter Descriptions
res_gamma_pois_zi

Zero-Inflated Gamma-Poisson Residuals
res_bern

Bernoulli Residuals
pextreme

Extreme Probability
res_binom

Binomial Residuals
res_lnorm

Log-Normal Residuals
res_neg_binom

Negative Binomial Residuals
as_list_unnamed

As List
as_list

As List