محاسبه شاخص نرخ رشد (تاریخ میلادی و شمسی) در نرم افزار Power BI

یکی از پر کاربرد ترین شاخص های مورد استفاده در گزارش ها، محاسبه نرخ رشد سنجه‌های مورد نظر در مقایسه با دوره های گذشته است. این شاخص، عموما در بازه های زمانی از جمله سال به سال، ماه به ماه، هفته به هفته استفاده میشود. این دسته بندی تاریخی به عنوان “Period-on-Period”، شناخته میشود. تکنیکی که به شما امکان محاسبه مقادیری در فرم تاریخ فعلی در مقایسه با همان فرم تاریخ در زمان دیگر را فراهم میکند.

عنوان مقاله : محاسبه شاخص نرخ رشد (تاریخ میلادی و شمسی) در نرم افزار Power BI

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

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

لینک دیتابیس استفاده شده : فایل اکسل 

پیش از شروع این مقاله به توضیح در خصوص شاخص نرخ رشد می پردازیم.

نرخ رشد چیست؟

رشد به عنوان تغییرات یک کمیت در نظر گرفته میشود. رشد کمیت با توجه به مفهوم آن ممکن است افزایشی و یا کاهشی باشد. برای مثال نرخ رشد (Growth Rate) فروش، نرخ رشد بازدیدکنندگان سایت، نرخ رشد درآمد یک شرکت و غیره.

نحوه محاسبه  شاخص نرخ رشد:

به عنوان مثال شرکتی، میزان فروش آن در پایان سال ۱۳۹۹ به مقدار a و در پایان سال ۱۳۹۸ مقدار فروش آن به مقدار b میباشد. نرخ رشد براساس فرمول زیر بدست می آید :

GR=(b-a)/a×۱۰۰
مرحله ۱: ایجاد یک جدول به عنوان بعد تاریخ

چندین روش برای ایجاد یک جدول بعد تاریخ در Power BI وجود دارد. یکی از این روش ها وجود یک جدول مجزا به اسم DimDate جهت محاسبات تاریخی می باشد. جهت انجام مراحل بعدی داده های این فایل، در نرم افزار واکشی میشود.

سپس  باتوجه به شکل زیر، در قسمت مدل، یک رابطه (one to many relationship) بین فیلدهای تاریخ میلادی این دو جدول ایجاد میگردد.

شکل 1.تعریف یک رابطه بین دو جدول

مرحله ۲: ایجاد یک سنجه برای محاسبه مقادیر در بازه فعلی

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

SaleAmount = 
      SUMX(Sale,Sale[OrderQuantity]*Sale[UnitPrice])

داده های مورد استفاده در این مثال، مبالغ فروش برای محصولات گوناگون می باشد. برای درک بهتر در صفحه گزارش، از قسمت مصور سازی یک جدول اضافه و مقادیر سال و فروش را به آن اضافه میکنیم.

همانطور که مشاهده میکنید در هر سال میزان فروش در همان سال نشان داده شده است.

مرحله ۳: ایجاد یک سنجه برای محاسبه مقادیر در بازه تاریخی گذشته

برای ایجاد این سنجه، از دسته بندی توابع Time Intelligence در زبان فرمول نویسی DAX و تابع  “PREVIOUSYEAR”  استفاده شده است:

LastYearSales =CALCULATE(SUM(Sale[SalesAmount]),PREVIOUSYEAR(DATES[Miladi]))

سپس در جدول قبلی این ستون اضافه میگردد.

همان طور که مشاهده می کنید در هر سال،میزان فروش درهمان سال و  در سال قبل را نمایش می دهد. به طور مثال به سال های ۲۰۰۶ و ۲۰۰۷ دقت نمایید.

مرحله ۴: ایجاد سنجه نرخ رشد 

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

Difference=
  VAR SaleAmount = Sale[SaleAmount]
  VAR lastYearSales = [LastYearSales]
  VAR Result = SaleAmount - lastYearSales
RETURN Result
Growth Rate = 
    DIVIDE ([Difference], [LastYearSales])*100

سپس این سنجه به جدول اضافه میگردد.

همان طور که مشاهده می کنید به طور مثال در سال ۲۰۰۷ نسبت به سال قبل آن، با ۶۲ درصد افت فروش مواجه بوده ایم.

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

ایجاد یک جدول با ساختار زیر :

ShamsiSaleTable = 
    SUMMARIZECOLUMNS(DATES[syear],"Total Sale",SUM(Sale[SalesAmount]))

یک ستون جهت ایجاد ایندکس، اضافه میگردد

Index = RANKX(ALL(ShamsiSaleTable),ShamsiSaleTable[syear],,ASC)

حال برای بدست آوردن مقادیر فروش در سال قبل از روش زیر استفاده میکنیم. یک ستون با فرمول زیر اضافه میگردد.

Prev Year = if(ShamsiSaleTable[Index]=1,ShamsiSaleTable[Total Sale ],
            LOOKUPVALUE(ShamsiSaleTable[Total Sale ],ShamsiSaleTable[Index],ShamsiSaleTable[Index]-1))

در انتها همان فرمول نرخ رشد که در قسمت تاریخ میلادی درج شده در این قسمت نیز استفاده میگردد. و در انتها نرخ رشد بر اساس تاریخ شمسی بدست می آید.

[ratings]

1 پاسخ

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

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

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

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