CommencerCommencer gratuitement

Calculate granular CLV

In this scenario you will use more granular data points at the invoice level. This approach uses more granular data and can give a better customer lifetime value estimate. Make sure you compare the results with the one from the basic CLV model.

The pandas and numpy libraries have been loaded as pd as np respectively. The online dataset has been imported for you.

Cet exercice fait partie du cours

Machine Learning for Marketing in Python

Afficher le cours

Instructions

  • Group by InvoiceNo and calculate the mean of the TotalSum column.
  • Group by CustomerID and InvoiceMonth and calculate the mean number of unique monthly invoices per customer.
  • Define lifespan to 36 months.
  • Calculate the granular CLV by multiplying the three previous metrics.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Calculate average revenue per invoice
revenue_per_purchase = online.___(['___'])['TotalSum'].mean().mean()

# Calculate average number of unique invoices per customer per month
frequency_per_month = online.___(['CustomerID','InvoiceMonth'])['___'].___().mean()

# Define lifespan to 36 months
lifespan_months = 36

# Calculate granular CLV
clv_granular = ___ * frequency_per_month * lifespan_months

# Print granular CLV value
print('Average granular CLV is {:.1f} USD'.format(clv_granular))
Modifier et exécuter le code