bma.cr: Multiple Systems Estimation Using Decomposable Graphical...

View source: R/bma.R

bma.crR Documentation

Multiple Systems Estimation Using Decomposable Graphical Models

Description

Compute population size posterior distributions for decomposable graphical models.

Usage

bma.cr(Y, Nmissing, delta, graphs,
              logprior = NULL, log.prior.model.weights = NULL, alpha=1)

Arguments

Y

p-dimensional array (2^p elements) of list intersection counts.

Nmissing

Vector of all possible values for the number of individuals that appear on no list.

delta

Hyper-parameter for the hyper-Dirichlet prior distribution on list intersection probabilities. Can be a positive number of an array of "prior counts" of the same dimension of Y.

graphs

Pre-computed list of all decomposable graphical models for p lists. These should be loaded using data(graphs3), data(graphs4) or data(graphs5); see example. Currently, this package includes a list of graphs for three, four, or five lists.

logprior

Log of the prior probability of each value in Nmissing. If left blank, this will default to the -log(Nmissing).

log.prior.model.weights

Prior weights on the graphs. This should be a vector of the same length as graphs.

alpha

Fractional posterior distribution hyperparameter. Defaults is 1 for regular posterior distirbutions.

Details

This is the main function in this package. It performs capture-recapture (or multiple systems estimation) using Bayesian model averaging as outlined in Madigan and York (1997).

Value

This function returns a matrix of weights, where rows correspond to models and columns correspond to values of Nmissing. Thus, the ijth entry of the matrix is the posterior probability of the ith model and the jth entry of Nmissing. Row sums return posterior probabilities by model.Column sums return posterior probabilities by value of Nmissing.

Author(s)

Adapted by Olivier Binette olivier.binette@gmail.com from the dga::bma.cr function of James Johndrow james.johndrow@gmail.com and Kristian Lum kl@hrdag.org

Source

dga package.

References

James Johndrow, Kristian Lum and Patrick Ball (2015). dga: Capture-Recapture Estimation using Bayesian Model Averaging. R package version 1.2. https://CRAN.R-project.org/package=dga

Examples

library(dga)

#### 5 list example from M & Y ##########
delta <- .5
Y <- c(0, 27, 37, 19, 4, 4, 1, 1, 97, 22, 37, 25, 2, 1, 3, 5, 83, 36, 34, 18, 3, 5, 0, 2, 30, 5, 23, 8, 0, 3, 0, 2)
Y <- array(Y, dim = c(2, 2, 2, 2, 2))
Nmissing <- 1:300
N <- Nmissing + sum(Y)
data(graphs5)
weights <- bma.cr(Y, Nmissing, delta, graphs5)

##### 3 list example from M & Y #######
Y <- c(0, 60, 49, 4, 247, 112, 142, 12)
Y <- array(Y, dim = c(2, 2, 2))

delta <- 1
a <- 13.14
b <- 55.17

Nmissing <- 1:300
N <- Nmissing + sum(Y)

logprior <- N * log(b) - (N + a) * log(1 + b) + lgamma(N + a) - lgamma(N + 1) - lgamma(a)

data(graphs3)
weights <- bma.cr(Y, Nmissing, delta, graphs3, logprior)


OlivierBinette/MSETools documentation built on Aug. 7, 2022, 8:42 p.m.