ÎncepețiÎncepe gratuit

Calculează valorile RFM

Calculează valorile Recency, Frequency și Monetary pentru setul de date online folosit anterior – a fost încărcat deja cu datele din ultimele 12 luni. Setul de date online conține o coloană TotalSum, calculată prin înmulțirea Quantity cu UnitPrice: online['Quantity'] * online['UnitPrice'].

Am creat și o variabilă snapshot_date pe care o poți folosi pentru a calcula recency. Poți afișa setul de date online și variabila snapshot_date în consolă oricând dorești. Biblioteca pandas este încărcată ca pd, iar datetime ca dt.

Acest exercițiu face parte din cursul

Segmentarea clienților în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Calculează valorile Recency, Frequency și Monetary (în această ordine) pentru fiecare client.
  • Pentru Recency – calculează diferența dintre valoarea snapshot_date și maximul coloanei InvoiceDate.
  • Redenumește coloanele ca Recency, Frequency și MonetaryValue.
  • Afișează primele 5 rânduri din datamart.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Calculate Recency, Frequency and Monetary value for each customer 
datamart = online.groupby(['CustomerID']).agg({
    'InvoiceDate': lambda x: (snapshot_date - x.____()).days,
    'InvoiceNo': '____',
    'TotalSum': '____'})

# Rename the columns 
datamart.rename(columns={'InvoiceDate': '____',
                         'InvoiceNo': '____',
                         'TotalSum': '____'}, inplace=True)

# Print top 5 rows
print(____.head())
Editează și rulează codul