Learn R Programming

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

CLVTools (version 0.11.1)

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.11.1

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Patrick Bachmann

Last Published

October 13th, 2024

Functions in CLVTools (0.11.1)

cdnow

CDNOW dataset
bgnbd

BG/NBD models
clv.fitted.transactions.static.cov-class

Fitted Transaction Model with Static 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.bootstrapped.apply

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

BG/NBD: Log-Likelihood functions
clv.model.pnbd.dynamic.cov-class

CLV Model functionality for PNBD with dynamic covariates
clv.model.gg-class

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

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

CLV Model without support for life-trans correlation
clv.model.ggomnbd.no.cov-class

CLV Model functionality for GGompertz/NBD without covariates
clv.model.bgnbd.static.cov-class

CLV Model functionality for BG/NBD with static covariates
clv.data-class

Transactional data to fit CLV models
clv.fitted-class

Fitted model without covariates
clv.pnbd.static.cov-class

Result of fitting the Pareto/NBD model with static covariates
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.pnbd.dynamic.cov-class

Result of fitting the Pareto/NBD model with dynamic covariates
clv.data.static.covariates-class

Transactional and static covariates data to fit CLV models
clv.fitted.transactions-class

Fitted Transaction Model without covariates
clv.time-class

Time Unit defining conceptual periods
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
clv.fitted.spending-class

Fitted Spending Model
clv.model-class

CLV Model providing model related functionalities
clv.ggomnbd-class

Result of fitting the GGompertz/NBD model without covariates
clv.model.with.correlation-class

CLV Model providing life-trans correlation related functionalities
gg_LL

Gamma-Gamma: Log-Likelihood Function
ggomnbd

Gamma-Gompertz/NBD model
clv.pnbd-class

Result of fitting the Pareto/NBD model without covariates
clv.ggomnbd.static.cov-class

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

Create an object for transactional data required to estimate CLV
fitted.clv.fitted

Extract Unconditional Expectation
ggomnbd_CET

GGompertz/NBD: Conditional Expected Transactions
clv.time.date-class

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

Time unit representing a single Year
clv.time.datetime-class

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

Time unit representing a single Day
gg

Gamma/Gamma Spending model
plot.clv.data

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

GGompertz/NBD: Log-Likelihood functions
newcustomer

New customer prediction data
lrtest

Likelihood Ratio Test of Nested Models
ggomnbd_PAlive

GGompertz/NBD: Probability of Being Alive
nobs.clv.fitted

Number of observations
nobs.clv.data

Number of observations
plot.clv.fitted.spending

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

Predict customers' future spending
pnbd_expectation

Pareto/NBD: Unconditional Expectation
pnbd_pmf

Pareto/NBD: Probability Mass Function (PMF)
pnbd_PAlive

Pareto/NBD: Probability of Being Alive
pmf

Probability Mass Function
ggomnbd_PMF

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

Plot Diagnostics for a Fitted Transaction Model
pnbd_DERT

Pareto/NBD: Discounted Expected Residual Transactions
pnbd_LL

Pareto/NBD: Log-Likelihood functions
latentAttrition

Formula Interface for Latent Attrition Models
ggomnbd_expectation

GGompertz/NBD: Unconditional Expectation
clv.time.hours-class

Time unit representing a single hour
pnbd_CET

Pareto/NBD: Conditional Expected Transactions
summary.clv.fitted

Summarizing a fitted CLV model
pnbd

Pareto/NBD models
clv.time.weeks-class

Time unit representing a single Week
vcov.clv.fitted

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

GSL Hypergeometric 2F0 for equal length vectors
print.clv.time

Summarizing a CLV time object
subset.clv.data

Subsetting clv.data
summary.clv.data

Summarizing a CLV data object
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
apparelStaticCov

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

Coerce to a Data Frame
as.data.table.clv.data

Coerce to a Data Table
as.clv.data

Coerce to clv.data object
SetDynamicCovariates

Add Dynamic Covariates to a CLV data object
CLVTools-package

Customer Lifetime Value Tools
apparelDynCovFuture

Future Time-varying Covariates for the Apparel Retailer Dataset
apparelTrans

Apparel Retailer Dataset
bgnbd_CET

BG/NBD: Conditional Expected Transactions
bgnbd_pmf

BG/NBD: Probability Mass Function (PMF)
bgbb

BG/BB models - Work In Progress
SetStaticCovariates

Add Static Covariates to a CLV data object
apparelDynCov

Time-varying Covariates for the Apparel Retailer Dataset
clv.bgnbd-class

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

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

BG/NBD: Unconditional Expectation
bgnbd_PAlive

BG/NBD: Probability of Being Alive