abe.mcmc.DrawParameters {BTYDplus} | R Documentation |
Pareto/NBD (Abe) Parameter Draws
Description
Returns draws from the posterior distributions of the Pareto/NBD (Abe) parameters, on cohort as well as on customer level.
Usage
abe.mcmc.DrawParameters(
cal.cbs,
covariates = c(),
mcmc = 2500,
burnin = 500,
thin = 50,
chains = 2,
mc.cores = NULL,
trace = 100
)
Arguments
cal.cbs |
Calibration period customer-by-sufficient-statistic (CBS)
data.frame. It must contain a row for each customer, and columns |
covariates |
A vector of columns of |
mcmc |
Number of MCMC steps. |
burnin |
Number of initial MCMC steps which are discarded. |
thin |
Only every |
chains |
Number of MCMC chains to be run. |
mc.cores |
Number of cores to use in parallel (Unix only). Defaults to |
trace |
Print logging statement every |
Details
See demo('pareto-abe')
for how to apply this model.
Value
List of length 2:
level_1 |
list of |
level_2 |
|
References
Abe, M. (2009). "Counting your customers" one by one: A hierarchical Bayes extension to the Pareto/NBD model. Marketing Science, 28(3), 541-553. doi: 10.1287/mksc.1090.0502
See Also
abe.GenerateData
mcmc.PAlive
mcmc.DrawFutureTransactions
Examples
data("groceryElog")
cbs <- elog2cbs(groceryElog, T.cal = "2006-12-31")
cbs$cov1 <- as.integer(cbs$cust) %% 2 # create dummy covariate
param.draws <- abe.mcmc.DrawParameters(cbs, c("cov1"),
mcmc = 100, burnin = 50, thin = 10, chains = 1) # short MCMC to run demo fast
# cohort-level parameter draws
as.matrix(param.draws$level_2)
# customer-level parameter draws for customer with ID '4'
as.matrix(param.draws$level_1[["4"]])
# estimate future transactions
xstar.draws <- mcmc.DrawFutureTransactions(cbs, param.draws, cbs$T.star)
xstar.est <- apply(xstar.draws, 2, mean)
head(xstar.est)