Cohort چیست؟
میزان بازگشت مشتریامونه. یه نمودار معمولا درصدی که مثلا میگه:در ماه اردیبهشت ۹۶ اگر ۱۰۰ نفر اومدن خرید، ۳۰ تاشون ماه بعد هم اومدن، ۴۰ تاشون دو ماه بعدشم اومدن، ۲۰ تاشون ۳ ماه بعد اومدن و الی ما شاء الله.
لازمه درست کردن Cohort Analysis:
لازمه درست کردن این گزارش: شماره کاربری (user ID) و تاریخ خرید برای هر رکورد خریدی هست.
روش درست کردن Cohort Analysis:
به دو روش میشه این دوست عزی رو درستش کرد:
- با سیستم های گزارش ساز مثل SSRS که در اون هر بار تاریخ میدیم و به ترتیب در تاریخ ماه های بعدی رو بهمون نشون میده که چه مقدار از اون مشتری ها تکرار شدن.
select year(InvoiceDate) Yr,MONTH(InvoiceDate) Mnt , count(distinct UserId) cnt from Tbl1
where UserId in
(select distinct UserId from Tbl1
where
year(InvoiceDate) = 2016
and MONTH(InvoiceDate) = 05
)
group By year(InvoiceDate), MONTH(InvoiceDate)
order by year(InvoiceDate), MONTH(InvoiceDate)
- با سیستم های گزارش سازی مثل Power Bi یا Excel که در اون دو تا ستون اضافه میکنیم یکی در هر ردیف تاریخ اولین خرید مشتری رو مینویسیم و در دومی فاصله بین این دو تاریخ (تاریخ خرید یا فاکتور با تاریخ اولین خرید) سپس بر اساس این اعداد دسته بندی میکنیم و در ماتریسمون مقادیر میشن تعداد اعداد ۰ و ۱ و … در هر ماه.
FirstInvoice = calculate (MIN(Tbl1[InvoiceDate]),ALLEXCEPT(Tbl1,Tbl1[UserId]))
و برای دومی:
MonthFrom1stInvoice = DATEDIFF( Tbl1[FirstInvoice],Tbl1[InvoiceDate] ,MONTH)
یک سری نکاتی:
- برای روش دوم توی نمودار حتما محور عمودی رو بذارید تاریخ اولین خرید اگر بگذارید تاریخ فاکتور نتیجه میشه :۱۰۰ نفری که اردیبهشت ۹۶ اومدن خرید، ۳۰ تاشون ۱ ماه قبل اولین خریدشون بوده، ۲۰ تاشون ۲ ماه پیش و … .
- تفکرتون رو محدود نکنید به کوئری. بیرون از جعبه نگاه کنید. برای همین روش دوم من ۱ روز فکر کردم.
- همه اونایی که ی بار اومدن بر نمیگردن. این هیچ ربط فنی نداشت.