abe.GenerateData {BTYDplus} | R Documentation |
Simulate data according to Pareto/NBD (Abe) model assumptions
Description
Simulate data according to Pareto/NBD (Abe) model assumptions
Usage
abe.GenerateData(
n,
T.cal,
T.star,
params,
date.zero = "2000-01-01",
covariates = NULL
)
Arguments
n |
Number of customers. |
T.cal |
Length of calibration period. If a vector is provided, then it
is assumed that customers have different 'birth' dates, i.e.
|
T.star |
Length of holdout period. This may be a vector. |
params |
A list of model parameters: |
date.zero |
Initial date for cohort start. Can be of class character, Date or POSIXt. |
covariates |
Provide matrix of customer covariates. If NULL then random covariate values between [-1,1] are drawn. |
Value
List of length 2:
cbs |
A data.frame with a row for each customer and the summary statistic as columns. |
elog |
A data.frame with a row for each transaction, and columns |
Examples
# generate artificial Pareto/NBD (Abe) with 2 covariates
params <- list()
params$beta <- matrix(c(0.18, -2.5, 0.5, -0.3, -0.2, 0.8), byrow = TRUE, ncol = 2)
params$gamma <- matrix(c(0.05, 0.1, 0.1, 0.2), ncol = 2)
data <- abe.GenerateData(n = 200, T.cal = 32, T.star = 32, params)
cbs <- data$cbs # customer by sufficient summary statistic - one row per customer
elog <- data$elog # Event log - one row per event/purchase
[Package BTYDplus version 1.2.0 Index]