Learn R Programming

CLVTools (version 0.11.2)

Tools for Customer Lifetime Value Estimation

Description

A set of state-of-the-art probabilistic modeling approaches to derive estimates of individual customer lifetime values (CLV). Commonly, probabilistic approaches focus on modelling 3 processes, i.e. individuals' attrition, transaction, and spending process. Latent customer attrition models, which are also known as "buy-'til-you-die models", model the attrition as well as the transaction process. They are used to make inferences and predictions about transactional patterns of individual customers such as their future purchase behavior. Moreover, these models have also been used to predict individuals’ long-term engagement in activities such as playing an online game or posting to a social media platform. The spending process is usually modelled by a separate probabilistic model. Combining these results yields in lifetime values estimates for individual customers. This package includes fast and accurate implementations of various probabilistic models for non-contractual settings (e.g., grocery purchases or hotel visits). All implementations support time-invariant covariates, which can be used to control for e.g., socio-demographics. If such an extension has been proposed in literature, we further provide the possibility to control for time-varying covariates to control for e.g., seasonal patterns. Currently, the package includes the following latent attrition models to model individuals' attrition and transaction process: [1] Pareto/NBD model (Pareto/Negative-Binomial-Distribution), [2] the Extended Pareto/NBD model (Pareto/Negative-Binomial-Distribution with time-varying covariates), [3] the BG/NBD model (Beta-Gamma/Negative-Binomial-Distribution) and the [4] GGom/NBD (Gamma-Gompertz/Negative-Binomial-Distribution). Further, we provide an implementation of the Gamma/Gamma model to model the spending process of individuals.

Copy Link

Version

Install

install.packages('CLVTools')

Monthly Downloads

513

Version

0.11.2

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Patrick Bachmann

Last Published

December 2nd, 2024

Functions in CLVTools (0.11.2)

clv.fitted-class

Fitted model without covariates
clv.data.dynamic.covariates-class

Transactional and dynamic covariates data to fit CLV models
clv.gg-class

Result of fitting the Gamma-Gamma model
clv.data.static.covariates-class

Transactional and static covariates data to fit CLV models
clv.model.ggomnbd.static.cov-class

CLV Model functionality for GGompertz/NBD with static covariates
clv.fitted.transactions.static.cov-class

Fitted Transaction Model with Static covariates
clv.model.ggomnbd.no.cov-class

CLV Model functionality for GGompertz/NBD without covariates
clv.fitted.spending-class

Fitted Spending Model
clv.model-class

CLV Model providing model related functionalities
clv.fitted.transactions-class

Fitted Transaction Model without covariates
clv.time-class

Time Unit defining conceptual periods
clv.time.date-class

Date based time-units
clv.time.datetime-class

POSIXct based time-units
clv.fitted.transactions.dynamic.cov-class

Fitted CLV Model with Dynamic covariates
clv.model.bgnbd.no.cov-class

CLV Model functionality for BG/NBD without covariates
bgnbd_expectation

BG/NBD: Unconditional Expectation
clvdata

Create an object for transactional data required to estimate CLV
clv.ggomnbd.static.cov-class

Result of fitting the GGompertz/NBD model with static covariates
clv.time.days-class

Time unit representing a single Day
clv.ggomnbd-class

Result of fitting the GGompertz/NBD model without covariates
ggomnbd

Gamma-Gompertz/NBD model
clv.bootstrapped.apply

Bootstrapping: Fit a model again on sampled data and apply method
gg_LL

Gamma-Gamma: Log-Likelihood Function
clv.time.hours-class

Time unit representing a single hour
clv.model.no.correlation-class

CLV Model without support for life-trans correlation
clv.time.years-class

Time unit representing a single Year
clv.model.pnbd.no.cov-class

CLV Model functionality for Pareto/NBD without covariates
clv.model.pnbd.static.cov-class

CLV Model functionality for Pareto/NBD with static covariates
clv.model.with.correlation-class

CLV Model providing life-trans correlation related functionalities
clv.model.pnbd.dynamic.cov-class

CLV Model functionality for PNBD with dynamic covariates
clv.time.weeks-class

Time unit representing a single Week
clv.pnbd-class

Result of fitting the Pareto/NBD model without covariates
fitted.clv.fitted

Extract Unconditional Expectation
clv.data-class

Transactional data to fit CLV models
clv.model.gg-class

CLV Model functionality for the Gamma-Gamma spending model
clv.pnbd.static.cov-class

Result of fitting the Pareto/NBD model with static covariates
nobs.clv.data

Number of observations
lrtest

Likelihood Ratio Test of Nested Models
pnbd

Pareto/NBD models
clv.model.bgnbd.static.cov-class

CLV Model functionality for BG/NBD with static covariates
pnbd_CET

Pareto/NBD: Conditional Expected Transactions
clv.pnbd.dynamic.cov-class

Result of fitting the Pareto/NBD model with dynamic covariates
newcustomer

New customer prediction data
ggomnbd_PAlive

GGompertz/NBD: Probability of Being Alive
plot.clv.fitted.transactions

Plot Diagnostics for a Fitted Transaction Model
gg

Gamma/Gamma Spending model
ggomnbd_PMF

GGompertz/NBD: Probability Mass Function (PMF)
pnbd_DERT

Pareto/NBD: Discounted Expected Residual Transactions
nobs.clv.fitted

Number of observations
pnbd_pmf

Pareto/NBD: Probability Mass Function (PMF)
ggomnbd_expectation

GGompertz/NBD: Unconditional Expectation
latentAttrition

Formula Interface for Latent Attrition Models
vec_gsl_hyp2f0_e

GSL Hypergeometric 2F0 for equal length vectors
vcov.clv.fitted

Calculate Variance-Covariance Matrix for CLV Models fitted with Maximum Likelihood Estimation
predict.clv.fitted.spending

Infer customers' spending
pnbd_LL

Pareto/NBD: Log-Likelihood functions
pmf

Probability Mass Function
vec_gsl_hyp2f1_e

GSL Hypergeometric 2F1 for equal length vectors
spending

Formula Interface for Spending Models
predict.clv.fitted.transactions

Predict CLV from a fitted transaction model
subset.clv.data

Subsetting clv.data
ggomnbd_CET

GGompertz/NBD: Conditional Expected Transactions
summary.clv.data

Summarizing a CLV data object
ggomnbd_LL

GGompertz/NBD: Log-Likelihood functions
pnbd_expectation

Pareto/NBD: Unconditional Expectation
plot.clv.fitted.spending

Plot expected and actual mean spending per transaction
pnbd_PAlive

Pareto/NBD: Probability of Being Alive
plot.clv.data

Plot Diagnostics for the Transaction data in a clv.data Object
print.clv.time

Summarizing a CLV time object
summary.clv.fitted

Summarizing a fitted CLV model
SetDynamicCovariates

Add Dynamic Covariates to a CLV data object
apparelTrans

Apparel Retailer Dataset
as.clv.data

Coerce to clv.data object
SetStaticCovariates

Add Static Covariates to a CLV data object
CLVTools-package

Customer Lifetime Value Tools
apparelStaticCov

Time-invariant Covariates for the Apparel Retailer Dataset
apparelDynCov

Time-varying Covariates for the Apparel Retailer Dataset
apparelDynCovFuture

Future Time-varying Covariates for the Apparel Retailer Dataset
bgnbd_PAlive

BG/NBD: Probability of Being Alive
as.data.table.clv.data

Coerce to a Data Table
bgbb

BG/BB models - Work In Progress
bgnbd

BG/NBD models
bgnbd_CET

BG/NBD: Conditional Expected Transactions
as.data.frame.clv.data

Coerce to a Data Frame
clv.bgnbd.static.cov-class

Result of fitting the BG/NBD model with static covariates
clv.bgnbd-class

Result of fitting the BG/NBD model without covariates
bgnbd_LL

BG/NBD: Log-Likelihood functions
bgnbd_pmf

BG/NBD: Probability Mass Function (PMF)
cdnow

CDNOW dataset