Gán cohort theo ngày mua mới
Như bạn đã thấy trong video, xác định cohort là bước đầu tiên của phân tích cohort. Giờ bạn sẽ tạo cohort theo ngày, dựa trên ngày mỗi khách hàng thực hiện giao dịch đầu tiên.
Dữ liệu đã được nạp thành DataFrame online, bạn có thể in vài dòng đầu bằng online.head() trong console.
Bài tập này là một phần của khóa học
Phân khúc khách hàng bằng Python
Hướng dẫn bài tập
- Tạo một hàm nhận vào một đối tượng datetime và trích xuất năm, tháng, ngày từ
x. - Tạo cột
InvoiceDaybằng cách lấy cộtInvoiceDatevà áp dụng hàmget_day. - Tạo một đối tượng
groupbynhóm theo biếnCustomerID, rồi chọnInvoiceDayđể tiếp tục tính toán. - Tạo cột
CohortDaybằng cách chọn giá trị nhỏ nhất củaInvoiceDay.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Define a function that will parse the date
def get_day(x): return dt.datetime(x.year, ____, ____)
# Create InvoiceDay column
online['____'] = online['____'].apply(____)
# Group by CustomerID and select the InvoiceDay value
grouping = online.groupby('____')['____']
# Assign a minimum InvoiceDay value to the dataset
online['CohortDay'] = grouping.____('____')
# View the top 5 rows
print(online.head())