Learn R Programming

⚠️There's a newer version (0.11.2) of this package.Take me there.

CLVTools (version 0.10.0)

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

579

Version

0.10.0

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Patrick Bachmann

Last Published

October 23rd, 2023

Functions in CLVTools (0.10.0)

bgnbd_LL

BG/NBD: Log-Likelihood functions
bgnbd_expectation

BG/NBD: Unconditional Expectation
clv.model-class

CLV Model providing model related functionalities
bgnbd_pmf

BG/NBD: Probability Mass Function (PMF)
bgnbd_PAlive

BG/NBD: Probability of Being Alive
clv.time.weeks-class

Time unit representing a single Week
clv.time.hours-class

Time unit representing a single hour
clv.fitted-class

Fitted model without covariates
clv.fitted.spending-class

Fitted Spending Model
clv.model.bgnbd.no.cov-class

CLV Model functionality for BG/NBD without covariates
clv.fitted.transactions-class

Fitted Transaction Model without covariates
clv.fitted.transactions.dynamic.cov-class

Fitted CLV Model with Dynamic covariates
bgnbd

BG/NBD models
bgnbd_CET

BG/NBD: Conditional Expected Transactions
clv.data-class

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

Transactional and dynamic covariates data to fit CLV models
clv.bgnbd.static.cov-class

Result of fitting the BG/NBD model with static covariates
ggomnbd_expectation

GGompertz/NBD: Unconditional Expectation
ggomnbd_PAlive

GGompertz/NBD: Probability of Being Alive
clv.model.with.correlation-class

CLV Model providing life-trans correlation related functionalities
clv.model.no.correlation-class

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

Result of fitting the Pareto/NBD model without covariates
clv.model.pnbd.dynamic.cov-class

CLV Model functionality for PNBD with dynamic covariates
latentAttrition

Formula Interface for Latent Attrition Models
clv.pnbd.dynamic.cov-class

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

Number of observations
clv.ggomnbd-class

Result of fitting the GGompertz/NBD model without covariates
as.data.frame.clv.data

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

Result of fitting the GGompertz/NBD model with static covariates
ggomnbd_CET

GGompertz/NBD: Conditional Expected Transactions
clv.model.gg-class

CLV Model functionality for the Gamma-Gamma spending model
clv.data.static.covariates-class

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

CLV Model functionality for BG/NBD with static covariates
ggomnbd_LL

GGompertz/NBD: Log-Likelihood functions
summary.clv.data

Summarizing a CLV data object
cdnow

CDNOW dataset
summary.clv.fitted

Summarizing a fitted CLV model
clv.model.ggomnbd.static.cov-class

CLV Model functionality for GGompertz/NBD with static covariates
gg_LL

Gamma-Gamma: Log-Likelihood Function
ggomnbd

Gamma-Gompertz/NBD model
clv.model.ggomnbd.no.cov-class

CLV Model functionality for GGompertz/NBD without covariates
clv.time.date-class

Date based time-units
clv.bgnbd-class

Result of fitting the BG/NBD model without covariates
clv.gg-class

Result of fitting the Gamma-Gamma model
clv.time-class

Time Unit defining conceptual periods
clv.fitted.transactions.static.cov-class

Fitted Transaction Model with Static covariates
plot.clv.fitted.spending

Plot expected and actual mean spending per transaction
predict.clv.fitted.spending

Predict customers' future spending
vec_gsl_hyp2f0_e

GSL Hypergeometric 2F0 for equal length vectors
predict.clv.fitted.transactions

Predict CLV from a fitted transaction model
vec_gsl_hyp2f1_e

GSL Hypergeometric 2F1 for equal length vectors
pnbd_CET

Pareto/NBD: Conditional Expected Transactions
pnbd_DERT

Pareto/NBD: Discounted Expected Residual Transactions
pnbd_expectation

Pareto/NBD: Unconditional Expectation
pnbd_pmf

Pareto/NBD: Probability Mass Function (PMF)
plot.clv.fitted.transactions

Plot Diagnostics for a Fitted Transaction Model
clv.time.datetime-class

POSIXct based time-units
clv.time.days-class

Time unit representing a single Day
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
pmf

Probability Mass Function
clvdata

Create an object for transactional data required to estimate CLV
pnbd

Pareto/NBD models
clv.pnbd.static.cov-class

Result of fitting the Pareto/NBD model with static covariates
gg

Gamma/Gamma Spending model
fitted.clv.fitted

Extract Unconditional Expectation
nobs.clv.fitted

Number of observations
subset.clv.data

Subsetting clv.data
spending

Formula Interface for Spending Models
print.clv.time

Summarizing a CLV time object
vcov.clv.fitted

Calculate Variance-Covariance Matrix for CLV Models fitted with Maximum Likelihood Estimation
pnbd_LL

Pareto/NBD: Log-Likelihood functions
pnbd_PAlive

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

Plot Diagnostics for the Transaction data in a clv.data Object
apparelStaticCov

Time-invariant Covariates for the Apparel Retailer Dataset
as.clv.data

Coerce to clv.data object
bgbb

BG/BB models - Work In Progress
SetDynamicCovariates

Add Dynamic Covariates to a CLV data object
SetStaticCovariates

Add Static Covariates to a CLV data object
CLVTools-package

Customer Lifetime Value Tools
as.data.table.clv.data

Coerce to a Data Table
apparelDynCov

Time-varying Covariates for the Apparel Retailer Dataset
apparelTrans

Apparel Retailer Dataset