Description Usage Arguments Details Value Examples
Plots the actual and conditional expected number transactions made by customers in the holdout period, binned according to calibration period frequencies. Also returns a matrix with this comparison and the number of customers in each bin.
1 2 3 4 5 6 7 8 9 10 11 | bgnbd.PlotFreqVsConditionalExpectedFrequency(
params,
T.star,
cal.cbs,
x.star,
censor,
xlab = "Calibration period transactions",
ylab = "Holdout period transactions",
xticklab = NULL,
title = "Conditional Expectation"
)
|
params |
BG/NBD parameters - a vector with r, alpha, a, and b, in that order. r and alpha are unobserved parameters for the NBD transaction process. a and b are unobserved parameters for the Beta geometric dropout process. |
T.star |
length of then holdout period. |
cal.cbs |
calibration period CBS (customer by sufficient statistic). It must contain columns for frequency ("x"), recency ("t.x"), and total time observed ("T.cal"). Note that recency must be the time between the start of the calibration period and the customer's last transaction, not the time between the customer's last transaction and the end of the calibration period. |
x.star |
vector of transactions made by each customer in the holdout period. |
censor |
integer used to censor the data. See details. |
xlab |
descriptive label for the x axis. |
ylab |
descriptive label for the y axis. |
xticklab |
vector containing a label for each tick mark on the x axis. |
title |
title placed on the top-center of the plot. |
This function requires a censor number, which cannot be higher than the highest frequency in the calibration period CBS. The output matrix will have (censor + 1) bins, starting at frequencies of 0 transactions and ending at a bin representing calibration period frequencies at or greater than the censor number.
Holdout period transaction frequency comparison matrix (actual vs. expected).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | data(cdnowSummary)
cal.cbs <- cdnowSummary$cbs
# cal.cbs already has column names required by method
# number of transactions by each customer in the 39 weeks
# following the calibration period
x.star <- cal.cbs[,"x.star"]
# parameters estimated using bgnbd.EstimateParameters
est.params <- c(0.243, 4.414, 0.793, 2.426)
# the maximum censor number that can be used
max(cal.cbs[,"x"])
# plot conditional expected holdout period frequencies,
# binned according to calibration period frequencies
bgnbd.PlotFreqVsConditionalExpectedFrequency(est.params,
T.star = 39,
cal.cbs,
x.star,
censor = 7)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.