Hướng dẫn cách tạo Cohort Analysis trong Power BI
Cohort Analysis là gì?
Cohort analysis (Phân tích tổ hợp) là một loại hành vi chia dữ liệu theo nhóm có liên quan trước khi phân tích. Các nhóm sẽ có những đặc điểm chung trong một thời gian xác định.
Trong phân tích hành vi của người tiêu dùng, Cohort Analysis là một công cụ để đo mức độ tương tác của người dùng theo thời gian. Nó cho biết mức độ tương tác của người dùng đang thực sự tốt hơn theo thời gian hay chỉ có vẻ cải thiệu do tăng trưởng. Ngoài ra, một chỉ số số không kém phần quan trọng trong phân tích khác hàng đó là Customer Retention – chỉ số cho thấy khả năng giữ chân khách hàng của một sản phẩm hoặc dịch vụ. Customer Retention càng cao thì cho thấy mực độ trung thành của khách hàng đối với sản phẩm, dịch vụ của doanh nghiệp.
Cách tạo Cohort Analysis trong Power BI
Trong bài viết hôm nay dataMAKER sẽ sử dụng Cohort Analysis để phân tích khả năng giữ chân của khách hàng trong 1 doanh nghiệp bằng Power BI.
Để tạo Cohort Analysis phân tích Customer Retention trong Power BI, dataMAKER đã chuẩn bị bộ dữ liệu như sau:
Bảng Data: thể hiện tình hình mua hàng của khách hàng trong năm
Bảng AfterMonth tạo các nhóm là các tháng:
Để tạo Cohort Analysis, chúng ta cần phải xác định trong 1 tháng có bao nhiêu khách hàng có giao dịch, trong đó sẽ có bao nhiêu khách hàng mới, bao nhiêu khách hàng cũ. Để tính được điều đó, đầu tiên ở table Data, chúng ta sẽ tìm tháng đầu tiên mà khác hàng thực hiện mua hàng. Công thức để tính như sau:
First Order Date (EOM) = VAR CurrentCustomer = Data[Customer Id] RETURN CALCULATE( EOMONTH(MIN(Data[Order Date]),0), FILTER( Data, Data[Customer Id] = CurrentCustomer)
Trong đó MIN(Data[Order Date]) sẽ trả về ngày mua hàng đầu tiên theo từng Customer
Tiếp theo, thực hiện tính Retention Customer dataMAKER đã sử dụng biểu thức sau:
Customer Retention = VAR CurrentFirstOrderDate = SELECTEDVALUE('Data'[First Order Date (EOM)]) VAR MonthsAfter = SELECTEDVALUE('Months After'[Value]) RETURN DIVIDE( CALCULATE( DISTINCTCOUNT('Data'[Customer ID]), FILTER( 'Data', EOMONTH('Data'[Order Date],0) = EOMONTH(CurrentFirstOrderDate,MonthsAfter) ) ), DISTINCTCOUNT(Data[Customer Id]) )
Sau khi thực hiện tính toán, bước tiếp theo dataMAKER sẽ tạo bảng Matrix kéo thả các giá trị tương ứng để tạo Cohort Analysis
Kết quả thể hiện như hình bên dưới, để định dạng màu cho các các giá trị, các bạn sử dụng Conditional Formatting, chọn format theo Background Color để định dạng.