Learn R Programming

xactonomial

The goal of xactonomial is to use an exact (but computational and stochastic) method to compute a confidence interval and a function for calculation of p values in the k sample multinomial setting where interest is about a real-valued functional of the multinomial probabilities.

Installation

You can install the development version of xactonomial like so:

remotes::install_github("sachsmc/xactonomial")

but building the package from source requires a local rust environment. Instead, pre-built binaries can be found at https://sachsmc.r-universe.dev/xactonomial or used directly from R as

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

Example

This is a basic example which shows you how to use the main function:

library(xactonomial)

psi_ba <- function(theta) {
   theta1 <- theta[1:4]
   theta2 <- theta[5:8]
   sum(sqrt(theta1 * theta2))
   }

data <- list(T1 = c(2,1,2,1), T2 = c(0,1,3,3))
xactonomial(data, psi_ba, psi_limits = c(0, 1), maxit = 5, chunksize = 20)

Copy Link

Version

Install

install.packages('xactonomial')

Version

1.0.3

License

MIT + file LICENSE

Maintainer

Michael Sachs

Last Published

April 28th, 2025

Functions in xactonomial (1.0.3)

sspace_multinom_slow

Enumerate the sample space of a multinomial
xactonomial

Improved inference for a real-valued function of multinomial parameters
calc_prob_null_fast

Calculate probability for given parameters
log_multinom_coef

Calculate log of multinomial coefficient
rdirich_dk_vects

Sample independently from Dirichlet distributions for each of d_k vectors
combinate2

Like combinate but adds on to previous call
calc_prob_null_gradient

Gradient of the multinomial likelihood sum
calc_prob_null

Calculate probability for given parameters
pvalue_psi0

Compute a p value for the test of psi <= psi0 (lower = TRUE) or psi >= psi0 (lower = FALSE)
calc_multinom_probs

Calculate multinomial probabilities
itp_root

Find a univariate root of the function f
combinate

Arrange all combinations of rows of two matrices
sspace_multinom

Enumerate the multinomial sample space
sample_unit_simplexn

Sample n times from the unit simplex in d dimensions
runif_dk_vects

Sample uniformly and independently from d_k simplices