آنالیز سبد خرید با Power BI

اگر فروشگاهی به صورت آنلاین دارید و می خواهید وقتی مشتری اولین کالای خود را در سبد خرید قرار می دهد ، شما محصول دوم را به او پیشنهاد دهید، یا برای تشویق به خرید و فروش بدانید کدام محصولات را در کنار یکدیگر قرار دهید تا فروشتان بیشتر شود همچنین برای کاوش در صفحات بازدید شده از یک وب سایت ، سوالات مطرح شده در پشتیبانی یک محصول و حتی غذاهای سفارش داده شده در یک رستوران تحلیل داشته باشید با ما همراه باشید.

 

عنوان مقاله : آنالیز سبد با Power BI

مدت زمان لازم برای مطالعه : ۹ دقیقه

لینک ابزار : پاور بی آی نسخه دسکتاپ

لینک دیتابیس استفاده شده : فایل اکسل Basket Analysis.xlsx

 

در این مقاله ، نحوه اجرای Basket Analysis در Power BI را به شما آموزش می دهیم.

Basket Analysis محصولاتی را که با هم توسط مصرف کنندگان خریداری شده اند ، کشف می کند. به عنوان مثال ، این تجزیه و تحلیل در یک فروشگاه مواد غذایی  ممکن است نشان دهد که ماست و انواع توت ها اغلب با هم خریداری می شوند.

بر اساس نتایج حاصل از این تحلیل ، شما می توانید:

– محصولات را برای تشویق فروش متقابل نزدیک به یکدیگر قرار دهید .(اگر فروشگاه به صورت فیزیکی است)

– وقتی مشتری اولین کالای خود را در سبد خرید قرار می دهد ، محصول دوم را پیشنهاد دهید. (اگر فروشگاه به صورت آنلاین باشد)

– محصولات را با هم بفروشید.

–  برای خرید محصولات با هم تخفیف ارائه دهید.

این تحلیل فقط به محصولات یک فروشگاه محدود نمی شود. تجزیه و تحلیل سبد همچنین برای کاوش در صفحات بازدید شده از یک وب سایت ، سوالات مطرح شده در پشتیبانی یک محصول و حتی غذاهای سفارش داده شده در یک رستوران مفید است.

نمودارهای زیر شبکه تجزیه و تحلیل سبد و نمودار تجزیه و تحلیل سبد می باشند که ما با هم خواهیم ساخت.

 

 

سه مفهوم کلیدی برای آنالیز سبد در Power BI  لازم است : Support، Confidence و Lift.

 

Support

این ساده ترین مفهوم مابین سه مفهوم کلیدی است. درصدی از معاملات است که شامل دو محصول خاص می شود.

با استفاده از مثال بالا ماست و توت در ۱.۱% از معاملات ظاهر می شوند، بنابراین Support  أنها ۱.۱% است. به عبارت دیگر در ۱۰۰۰ معامله به طور متوسط ۱۱ معامله با ماست و توت با هم انجام شده است.

Support به دو دلیل مهم است:

دلیل اول) Support  باید به اندازه کافی بالا باشد تا فرصت فروش متقابل از نظر اقتصادی جذاب باشد. فروش متقابل محصولات با درآمد بسیار اندک ارزش تلاش را ندارد.

دلیل دوم) از ترکیبات محصولی که به ندرت اتفاق می افتد (Support کم) نباید استفاده شود زیرا تجزیه و تحلیل آماری در مورد ترکیبات نادر قابل اطمینان نیست.

 

Confidence

Confidence، درصدی از معاملاتی است که حاوی این دو محصول با هم می باشد ، از معاملات حاوی یکی از این دو محصول.

در نتیجه ، برای هر دو محصول همیشه دو شماره Confidence وجود دارد.

برای رابطه بین ماست و توت:

– ۷.۵۸٪ از مصرف کنندگان از همه مصرف کنندگان ماست ، ماست و توت خریداری کرده اند

– ۳۱.۸٪ از مصرف کنندگان از همه مصرف کنندگان توت ، ماست و توت خریداری کرده اند

Confidence جهت فروش متقابل را نشان می دهد. ما می توانیم این فرضیه را داشته باشیم که فروش ماست به شخصی که توت خریداری می کند آسان تر است ، در مقایسه با عکس این موضوع.

با این حال ، Confidence قدرت رابطه ی بین محصولات را به ما نشان نمی دهد. یک محصول ممکن است یک خرید بسیار رایج باشد به طوری که مستقل از کالای دوم ، دارای ا Confidenceبالایی باشد.

 

Lift

Lift قدرت رابطه بین دو محصول از یک سبد را نشان می دهد.

اگر Lift عدد نزدیک به ۱ را نشان دهد در اینصورت هیچ ارتباط مهمی بین محصولات وجود ندارد.

عددی بالاتر از ۱ (رابطه مثبت) نشان می دهد که مصرف کنندگان سبد خرید را بیشتر از اینکه اتفاقی خرید کنند ، خریداری می کنند

عدد کمتر از ۱ (رابطه منفی) نشان می دهد که مصرف کنندگان سبد خرید را کمتر از از اینکه اتفاقی خرید کنند ، خریداری می کنند

Lift برای ماست و توت  ۲.۳ می باشد ، به این معنی که مصرف کنندگان آنها را با هم حدود ۲.۳ برابر بیشتر از اینکه اتفاقی با هم خرید شوند خریداری می کنند. این یک رابطه نسبتا قوی است.

به طور خلاصه:

Support تعداد دفعات فروش محصولات با هم را نشان می دهد. مقدار زیاد Support به این معنی است که آمار تحلیل سبد قابل اطمینان تر است. علاوه بر این ، Support بالاتر سبد محصولات را از نظر اقتصادی جالب تر می کند.

Confidence  نشان دهنده جهت فروش متقابل است.

Lift  نشان دهنده قدرت رابطه بین محصولات است.

 

اکنون برای تجزیه و تحلیل به Power BI برویم

 

بارگزاری داده های تحلیل سبد در Power BI

برای این مقاله ، من از مجموعه داده های نمونه موجود در فایل اکسل استفاده می کنم.

 

بارگزاری داده ها و اضافه کردن ستون Index

ابتدا با رفتن به Get Data و سپس Excel ، فایل Excel را در Power BI بارگذاری کنید.

فایل بعد از بارگذاری آن در Power BI به صورت زیر نشان داده شده است.

در هر سطر یک معامله وجود دارد و ستون ها محصولات خریداری شده در همان معامله را نشان می دهند. به عنوان مثال ، معاملات ردیف ۱۰ حاوی شیر و غلات است.

اولین قدم افزودن ستون Index است. ستون Index به ما این امکان را می دهد که معاملات را جداگانه تحلیل کنیم.

به قسمت  Column Add رفته و روی Index Column کلیک کنید.

 

نتیجه همان جدول است با یک ستون اضافه شده ی Index. مهم نیست که ستون Index در ابتدا باشد یا در انتها.

Unpivot کردن جدول و حذف ستون های غیرضروری

مرحله بعدی Unpivot کردن ستون ها با محصولات است. بر روی Index کلیک راست کرده و Unpivot Other Columns را انتخاب کنید.

 

نتیجه حاصل یک جدول با سه ستون است: ستون اول دارای Index یا شماره معامله ، ستون دوم شماره محصول و سومین ستون نام محصول است.

 

ستون دوم بی فایده است بنابراین می توانید آن را حذف کنید. بر روی Attribute کلیک راست کرده و حذف را انتخاب کنید.

ستون Value نیز ردیف های خالی برای حذف دارد. بر روی پیکان کنار آن کلیک کنید ، سپس گزینه (blank) را لغو انتخاب کرده و ok را انتخاب کنید. با این کار ردیف های خالی جدول حذف می شود.

مرحله آخر بارگذاری داده ها تغییر نام ستون ها است. ستون اول را به “Transaction ID” و ستون دوم را به “Item” تغییر نام دهید. با دوبار کلیک بر روی سر ستون می توانید ستون ها را تغییر نام دهید.

کار ما با آماده سازی داده ها تمام شد! برای بازگشت به Power BI ، روی Close & Apply کلیک کنید.

 

باید جدول “product” را ببینید که در سمت راست صفحه بارگزاری شده است.

 

ایجاد جدول Basket Analysis در Power BI

جدول Basket Analysis برای هر ترکیب از دو محصول یک ردیف دارد. علاوه بر این ، جدول دارای یک ستون برای هر یک از شاخص های توضیح داده شده در بالا است: Support ، Confidence و Lift.

 

جدول Basket Analysis با فرمول DAX ایجاد می شود. روی صفحه اصلی ، New Table  را کلیک کنید.

در پنجره باز شده فرمول زیر را وارد کنید:

Basket analysis = 

FILTER(
CROSSJOIN(VALUES('product'[Item]),SELECTCOLUMNS(VALUES('product'[Item]),"Item2", [Item])),
[Item]>[Item2])

در فرمول دو بخش وجود دارد: FILTER و CROSSJOIN .CROSSJOIN با ایجاد یک ردیف برای هر دو مورد ، جدول را ایجاد می کند. به طور خاص ، یک ردیف برای نان سفید به همراه مرکبات ، یک ردیف برای نان سفید به همراه قهوه ، یک ردیف برای وسایل آشپزخانه به همراه قهوه و غیره ایجاد می کند.

FILTER نیز ردیف های تکراری را حذف می کند.

اکنون یک جدول با تمام ترکیبات احتمالی محصولات داریم.

مرحله بعد اضافه کردن یک ستون جدید با به هم پیوستن این دو مورد است. بر روی New Column کلیک کنید و فرمول DAX زیر را وارد کنید:

Basket = [Item]&" – "&[Item2]

نتیجه به صورت زیر خواهد بود:

حال نوبت به بخش جالب توجه یعنی فرمول های شاخص می رسد.

اضافه کردن ستون Support

Support ، درصدی از معاملات حاوی دو مورد خاص را به صورت زیر محاسبه می کند.

 

 

فرمول DAX محاسبه به صورت زیر است :

Support basket = 

var item1=[Item]
var item2=[Item2]

var transactionsWithItem1 = SELECTCOLUMNS(FILTER('product','product'[Item]=item1),"transactionID",[Transaction ID])

var transactionsWithItem2 = SELECTCOLUMNS(FILTER(' product ',' product '[Item]=item2),"transactionID",[Transaction ID])

var transactionsWithBothItems = INTERSECT(transactionsWithItem1,transactionsWithItem2)

RETURN COUNTROWS(transactionsWithBothItems)/ DISTINCTCOUNT(product [Transaction ID])

متغیرهای مختلفی در این فرمول وجود دارد: معامله WithItem1 ، معامله WithItem2 و معاملاتWithBothItems  .

 

معامله WithItem1 جدولی از کلیه تراکنش ها شامل محصول اول را برمی گرداند. معامله WithItem2 همین کار را با محصول دوم انجام می دهد. معاملات WithBothItems جدولی از معاملات شامل هر دو محصول را برمی گرداند.

 

سرانجام  COUNTROWS تعداد معاملات هر دو محصول و DISTINCTCOUNT تعداد کل معاملات را محاسبه می کند.

 

اکنون به محاسبه ستون Confidence  می رویم.

اضافه کردن ستون Confidence

Confidence برابر است با درصد معاملات هر دو محصول (که Support سبد نامیده می شود) تقسیم بر درصد معاملات فقط با یک محصول (که Support محصول نامیده می شود).

 

 

 

فرمول DAX زیر Confidence را برای محصول یک محاسبه می کند. برای محصول دو نیز دقیقا همین منطق برقرار است.

Confidence Item 1 -> Basket = 

var item1 = [Item]
var numberOfTransactions = DISTINCTCOUNT(product[Transaction ID])

var supportItem1 = COUNTROWS(FILTER('product','product'[Item]=item1))/ numberOfTransactions

RETURN [Support basket]/supportItem1

و برای محصول دوم

Confidence Item 2 -> Basket = 

var item2 = [Item2]
var numberOfTransactions = DISTINCTCOUNT(product[Transaction ID])

var supportItem2 = COUNTROWS(FILTER('product','product'[Item]=item2))/ numberOfTransactions

RETURN [Support basket]/supportItem2

اضافه کردن ستون Lift

فرمول Lift به شکل زیر است :

 

 

برای آن دسته از محصولاتی که ، درصد دفعات خرید محصولات با هم (Support of basket)  مشابه یا نزدیک به درصد خرید محصول ۱ ضرب در درصد دفعات خرید محصول ۲ باشد در اینصورت گوییم محصولات نامرتبط با هم هستند.

در این حالت ، عدد صورت و مخرج در فرمول مقادیر مشابه دارند و بنابراین مقدار Lift نزدیک به یک است. مقدار Lift نزدیک به یک نشان دهنده عدم وجود رابطه است.

وقتی Lift بالاتر از یک باشد ، یعنی این دو محصول بیشتر  با هم خریداری می شوند. به عنوان مثال Lift برابر ۴ ، نشان دهنده یک رابطه قوی است: محصولات چهار برابر بیشتر از اینکه به تنهایی خریداری شوند با هم خریداری شده اند.

در زیر فرمول DAX برای Lift آورده شده است.

Lift = 

var item1 = [Item]
var item2 = [Item2]

var numberOfTransactions = DISTINCTCOUNT(product[Transaction ID])

var supportItem1 = COUNTROWS(FILTER('product','product'[Item]=item1))/numberOfTransactions

var supportItem2 = COUNTROWS(FILTER('product','product'[Item]=item2))/numberOfTransactions

RETURN [Support basket]/(supportItem1*supportItem2)

اکنون ما هر سه شاخص را داریم و می توانیم به سراغ مصورسازی برویم.

 

اضافه کردن ویژوال Basket Analysis Network به Power BI

نمودار Network از ویژوال های موجود در لیست استاندارد نیست و باید از marketplace به Power BI اضافه شود.

نمودار Network را به گزارش خود اضافه کرده و آن را از این طریق پیکربندی کنید: Item و Item2 را در Nodes بکشید و رها کنید ، سپس Lift  را در Measure قرار دهید.

در فیلترها ، یک فیلتر را روی Lift و Support basket اضافه کنید. در این مقاله ، فیلترهای ۲.۲ برای Lift و ۰.۶٪ برای Support basket به خوبی کار می کنند. فیلترهای صحیح ، به داده های تحلیل شده بستگی دارد.

نتیجه به صورت زیر خواهد بود

برای بزرگنمایی و کوچک کردن از نوار سمت چپ می توانید استفاده کنید. اندازه حباب ها با مقدار Lift برابر است.

باید یک نکته را رعایت کنید: وقتی کالایی با چندین محصول ارتباط دارد ، عدد نشان داده شده حاصل جمع Lift برای اتصالات مختلف است. این تعداد معنی ندارد.

حتی اگر عدد خودش بی معنی باشد ، عدد بزرگتر به این معنی است که محصول دارای Lift (روابط) مهمی با سایر محصولات است بنابراین محصول سزاوار تجزیه و تحلیل بیشتر است.

 

اکنون به ویژوال نهایی برای تحلیل سبد می پردازیم.

اضافه کردن ویژوال Scatter برای تجزیه و تحلیل سبد

نمودار معمول برای تجزیه و تحلیل سبد یک نمودار Scatter است که فیلترها مانند قبل روی Lift و Support Basket قرار دارند.

می توانید ستون های Confidence  را در بخش Tooltip اضافه کنید تا بتوانید هنگامی که ماوس را روی یک نقطه از نمودار نگه می دارید اطلاعات Confidence را مشاهده کنید.

و این هم از نتیجه

اکنون می توانید فروش محصول خود را تجزیه و تحلیل کنید و فرصت های فروش متقابل را پیدا کنید! امیدوارم این مقاله برای شما مفید بوده باشد.

 

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.