View source: R/pareto-nbd-abe.R
abe.mcmc.DrawParameters | R Documentation |
Returns draws from the posterior distributions of the Pareto/NBD (Abe) parameters, on cohort as well as on customer level.
abe.mcmc.DrawParameters(
cal.cbs,
covariates = c(),
mcmc = 2500,
burnin = 500,
thin = 50,
chains = 2,
mc.cores = NULL,
trace = 100
)
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 |
See demo('pareto-abe')
for how to apply this model.
List of length 2:
level_1 |
list of |
level_2 |
|
Abe, M. (2009). "Counting your customers" one by one: A hierarchical Bayes extension to the Pareto/NBD model. Marketing Science, 28(3), 541-553. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1287/mksc.1090.0502")}
abe.GenerateData
mcmc.PAlive
mcmc.DrawFutureTransactions
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)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.