Learn R Programming

extras

extras provides helper functions for Bayesian analyses.

In particular it provides functions to summarise vectors of MCMC (Monte Carlo Markov Chain) samples, draw random samples from various distributions 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.

Demonstration

Summarise MCMC Samples

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

library(extras)
#> 
#> Attaching package: 'extras'
#> The following object is masked from 'package:stats':
#> 
#>     step

set.seed(1)
x <- rnorm(100)
svalue(rnorm(100))
#> [1] 0.3219281
svalue(rnorm(100, mean = 1))
#> [1] 1.736966
svalue(rnorm(100, mean = 2))
#> [1] 4.058894
svalue(rnorm(100, mean = 3))
#> [1] 5.643856

Distributions

Implemented distributions with functions to draw random samples, calculate log-likelihoods, and calculate deviance residuals for include:

  • Bernoulli
  • Binomial
  • Beta-binomial
  • Gamma
  • Gamma-Poisson
  • Zero-inflated gamma-Poisson
  • Log-Normal
  • Negative Binomial
  • Normal
  • Poisson
  • Zero-inflated Poisson
  • Skew Normal
  • Student’s t

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

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.

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

Installation

Information

For more information see the Get Started vignette.

Installation

Release

To install the release version from CRAN.

install.packages("extras")

The website for the release version is at https://poissonconsulting.github.io/extras/.

Development

To install the development version from GitHub

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

or from r-universe.

install.packages("extras", repos = c("https://poissonconsulting.r-universe.dev", "https://cloud.r-project.org"))

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.

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

576

Version

0.10.0

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Nicole Hill

Last Published

July 15th, 2026

Functions in extras (0.10.0)

dev_pois_zi

Zero-Inflated Poisson Deviances
dev_gamma_pois

Gamma-Poisson Deviances
dev_norm

Normal Deviances
dev_neg_binom

Negative Binomial Deviances
dev_gamma

Gamma Deviances
dev_skewlnorm

Skew-Lognormal Deviances
directional_information

Directional information
dev_lnorm

Log-Normal Deviances
dev_gamma_pois_zi

Zero-Inflated Gamma-Poisson Deviances
dev_student

Student's t Deviances
ilog

Inverse Log Transformation
fill_na

Fill Missing Values
fill_all

Fill All Values
direction

Direction of a distribution
ilog10

Inverse Log Base 10 Transformation
extras-package

extras: Helper Functions for Bayesian Analyses
exp10

Exponential Transformation of Base 10
exp2

Exponential Transformation of Base 2
log2<-

Log Base 2 Transformation
inv_odds

Inverse Odds
invlogit

Inverse Logistic Transformation
inv_logit

Inverse Logistic Transformation
log_lik_bern

Bernoulli Log-Likelihood
log<-

Log Transformation
ilogit

Inverse Logistic Transformation
ilog2

Inverse Log Base 2 Transformation
fabs

Absolute
log_lik_lnorm

Log-Normal Log-Likelihood
log10<-

Log Base 10 Transformation
log_lik_exp

Exponential Log-Likelihood
log_lik_beta

Beta Log-Likelihood
log_lik_gamma_pois_zi

Zero-Inflated Gamma-Poisson Log-Likelihood
log_lik_beta_binom

Beta-Binomial Log-Likelihood
log_lik_norm

Normal Log-Likelihood
log_lik_binom

Binomial Log-Likelihood
kurtosis

Kurtosis
log_lik_neg_binom

Negative Binomial Log-Likelihood
log_lik_gamma

Gamma Log-Likelihood
log_lik_gamma_pois

Gamma-Poisson Log-Likelihood
log_odds_ratio

Log-Odds Ratio
log_lik_student

Student's t Log-Likelihood
log_lik_skewlnorm

Skew-Lognormal Log-Likelihood
log_odds<-

Inverse Log Odds Transformation
log_lik_pois

Poisson Log-Likelihood
log_lik_pois_zi

Zero-Inflated Poisson Log-Likelihood
odds

Odds
par_pattern

Parameter Pattern
log_lik_unif

Uniform Log-Likelihood
odds<-

Inverse Odds Transformation
log_odds

Log Odds
odds_ratio

Odds Ratio
logit<-

Logistic Transformation
log_lik_skewnorm

Skew Normal Log-Likelihood
logit

Logistic Transformation
prob_gamma_pois

Gamma-Poisson Cumulative Distribution Function
pow

Power
prob_bern

Bernoulli Cumulative Distribution Function
pextreme

Extreme Probability
prob_exp

Exponential Cumulative Distribution Function
prob_binom

Binomial Cumulative Distribution Function
odds_ratio2

Odds Ratio2
phi

Phi
prob_gamma

Gamma Cumulative Distribution Function
params

Parameter Descriptions
log_odds_ratio2

Log Odds Ratio2
prob_beta

Beta Cumulative Distribution Function
lower

Lower Credible Limit
numericise

Numericise (or Numericize)
prob_beta_binom

Beta-Binomial Cumulative Distribution Function
prob_unif

Uniform Cumulative Distribution Function
prob_student

Student's t Cumulative Distribution Function
prob_pois

Poisson Cumulative Distribution Function
prob_pois_zi

Zero-Inflated Poisson Cumulative Distribution Function
prob_neg_binom

Negative Binomial Cumulative Distribution Function
prob_norm

Normal Cumulative Distribution Function
prob_gamma_pois_zi

Zero-Inflated Gamma-Poisson Cumulative Distribution Function
prob_lnorm

Log-Normal Cumulative Distribution Function
prob_skewlnorm

Skew-Lognormal Cumulative Distribution Function
quant_bern

Bernoulli Quantile Function
pzeros

Proportion of Zeros
proportional_difference2

Proportional Difference2
prob_skewnorm

Skew Normal Cumulative Distribution Function
proportional_change

Proportional Change
proportional_difference

Proportional Difference
probability_direction

Probability of Direction
quant_exp

Exponential Quantile Function
quant_gamma_pois

Gamma-Poisson Quantile Function
quant_pois

Poisson Quantile Function
quant_norm

Normal Quantile Function
quant_gamma

Gamma Quantile Function
proportional_change2

Proportional Change2
quant_binom

Binomial Quantile Function
quant_beta

Beta Quantile Function
quant_gamma_pois_zi

Zero-Inflated Gamma-Poisson Quantile Function
quant_pois_zi

Zero-Inflated Poisson Quantile Function
quant_skewlnorm

Skew-Lognormal Quantile Function
pvalue

Bayesian P-Value
quant_lnorm

Log-Normal Quantile Function
quant_neg_binom

Negative Binomial Quantile Function
ran_bern

Bernoulli Random Samples
quant_unif

Uniform Quantile Function
ran_gamma_pois_zi

Zero-Inflated Gamma-Poisson Random Samples
ran_beta_binom

Beta-Binomial Random Samples
quant_skewnorm

Skew Normal Quantile Function
quant_student

Student's t Quantile Function
ran_binom

Binomial Random Samples
ran_student

Student's t Random Samples
ran_lnorm

Log-Normal Random Samples
ran_gamma

Gamma Random Samples
ran_skewnorm

Skew Normal Random Samples
ran_skewlnorm

Skew-Lognormal Random Samples
ran_neg_binom

Negative Binomial Random Samples
ran_gamma_pois

Gamma-Poisson Random Samples
res_beta_binom

Beta-Binomial Residuals
res_binom

Binomial Residuals
res_skewlnorm

Skew-Lognormal Residuals
res_neg_binom

Negative Binomial Residuals
res_bern

Bernoulli Residuals
ran_norm

Normal Random Samples
res_skewnorm

Skew Normal Residuals
ran_pois

Poisson Random Samples
ran_pois_zi

Zero-Inflated Poisson Random Samples
res_student

Student's t Residuals
res_pois

Poisson Residuals
sens_beta

Adjust Beta Distribution Parameters for Sensitivity Analyses
res_norm

Normal Residuals
res_gamma_pois_zi

Zero-Inflated Gamma-Poisson Residuals
res_lnorm

Log-Normal Residuals
sens_norm

Adjust Normal Distribution Parameters for Sensitivity Analyses
sens_pois

Adjust Poisson Distribution Parameters for Sensitivity Analyses
res_gamma

Gamma Residuals
sens_neg_binom

Adjust Negative Binomial Distribution Parameters for Sensitivity Analyses
sens_lnorm

Adjust Log-Normal Distribution Parameters for Sensitivity Analysis
dskewlnorm

Skew-Lognormal Distribution
xtr_rope

Region of Practical Equivalence
sens_gamma

Adjust Gamma Distribution Parameters for Sensitivity Analyses
res_gamma_pois

Gamma-Poisson Residuals
sens_exp

Adjust Exponential Distribution Parameters for Sensitivity Analyses
skewness

Skewness
svalue

Surprisal Value
xtr_mean

Mean
xtr_median

Median
sens_skewnorm

Adjust Skew Normal Distribution Parameters for Sensitivity Analyses
upper

Upper Credible Limit
sens_skewlnorm

Adjust Skew-Lognormal Distribution Parameters for Sensitivity Analyses
dskewnorm

Skew-Normal Distribution
xtr_sd

Standard Deviation
res_pois_zi

Zero-Inflated Poisson Residuals
xtr_ci

Credible Intervals
variance

Variance
step

Step
sens_gamma_pois

Adjust Gamma-Poisson Distribution Parameters for Sensitivity Analyses
sens_gamma_pois_zi

Adjust Zero-Inflated Gamma-Poisson Distribution Parameters for Sensitivity Analyses
sextreme

Extreme Surprisal
sens_student

Adjust Student's t Distribution Parameters for Sensitivity Analyses
xtr_ci_hdi

Highest Density Interval
xtr_ci_eti

Equal-Tailed Interval
zeros

Zeros
zscore

Z-Score
dbern

Bernoulli Distribution
chk_index

Check Index
dev_beta_binom

Beta-Binomial Deviances
dev_binom

Binomial Deviances
as_list

As List
dev_bern

Bernoulli Deviances
chk_indices

Check Indices
as_list_unnamed

As List
chk_pars

Check Parameter Names
dev_pois

Poisson Deviances
dev_skewnorm

Skew Normal Deviances