# bgbb.pmf: BG/BB Probability Mass Function In BTYD: Implementing BTYD Models with the Log Sum Exp Patch

## Description

Probability mass function for the BG/BB.

## Usage

 `1` ```bgbb.pmf(params, n, x) ```

## Arguments

 `params` BG/BB parameters - a vector with alpha, beta, gamma, and delta, in that order. Alpha and beta are unobserved parameters for the beta-Bernoulli transaction process. Gamma and delta are unobserved parameters for the beta-geometric dropout process. `n` number of transaction opportunities; may also be a vector. `x` number of transactions; may also be a vector.

## Details

P(X(n)=x | alpha, beta, gamma, delta). Returns the probability that a customer makes x transactions in the first n transaction opportunities.

Parameters `n` and `x` may be vectors. The standard rules for vector operations apply - if they are not of the same length, the shorter vector will be recycled (start over at the first element) until it is as long as the longest vector. It is advisable to keep vectors to the same length and to use single values for parameters that are to be the same for all calculations. If one of these parameters has a length greater than one, the output will be a vector of probabilities.

## Value

Probability of X(n)=x, conditional on model parameters.

## References

Fader, Peter S., Bruce G.S. Hardie, and Jen Shang. "Customer-Base Analysis in a Discrete-Time Noncontractual Setting." Marketing Science 29(6), pp. 1086-1108. 2010. INFORMS. Web.

`bgbb.pmf.General`
 ```1 2 3 4 5 6 7``` ```params <- c(1.20, 0.75, 0.66, 2.78) # The probability that a customer made 3 transactions in the first # 6 transaction opportunities. bgbb.pmf(params, n=6, x=3) # Vectors may also be used as arguments: bgbb.pmf(params, n=6, x=0:6) ```