BaşlayınÜcretsiz başlayın

RFM değerlerini hesapla

Daha önce kullandığımız online veri kümesi için Recency, Frequency ve Monetary değerlerini hesapla — son 12 aylık veriler senin için yüklendi. online veri kümesinde Quantity ile UnitPrice çarpılarak hesaplanan bir TotalSum sütunu bulunuyor: online['Quantity'] * online['UnitPrice'].

Ayrıca recency hesaplamak için kullanabileceğin bir snapshot_date değişkeni oluşturduk. İstersen Konsola online veri kümesini ve snapshot_date değerini yazdırabilirsin. pandas kütüphanesi pd, datetime ise dt olarak yüklendi.

Bu egzersiz, kursun bir parçasıdır

Python ile Müşteri Segmentasyonu

Kursa Göz Atın

Egzersiz talimatları

  • Her müşteri için (bu sırayla) Recency, Frequency ve Monetary değerlerini hesapla.
  • Recency için: snapshot_date ile InvoiceDate'in max değeri arasındaki farkı hesapla.
  • Sütunları Recency, Frequency ve MonetaryValue olarak yeniden adlandır.
  • datamart veri çerçevesinin ilk 5 satırını başlıkla birlikte yazdır.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# 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())
Kodu Düzenle ve Çalıştır