• مسابقه Power BI
    • اولین مسابقه Power BI
    • دومین مسابقه Power BI
    • سومین مسابقه Power BI
  • جدیدترین مطالب آموزشی
  • دوره‌های رایگان
  • تحلیل داده نرم افزاری (فنّی)
  • تحلیل داده غیرفنّی
  • دوره‌های آفلاین
  • سبد خرید
  • ارتباط با ما
    • تماس
    • درخواست مشاوره
    • اینستاگرام
    • تلگرام
    • آپارات
    • یوتیوب
  • حساب کاربری

سبد خرید شما خالی است.

گروه تحلیلگری
  • مسابقات Power BI
    • اولین مسابقه Power BI ایران
    • دومین مسابقه Power BI ایران
    • سومین مسابقه Power BI ایران
  • مطالب آموزشی
    • تمام مطالب آموزشی
    • اکسل (Excel)
    • پاور‌بی‌آی (Power BI)
    • پاورکوئری (Power Query)
    • دکس (DAX)
  • مسیرهای یادگیری
    • مسیر یادگیری تحلیل داده (فنی)
    • مسیر یادگیری غیرفنّی تحلیلگر داده
  • دوره‌های آموزشی
    • دوره‌های رایگان
    • مهارت‌های غیرفنّی تحلیلگر داده
    • اکسل (Excel)
    • پاور‌بی‌آی (Power BI)
    • پاورکوئری (Power Query)
    • زبان اس‌کیو‌ال (SQL)
    • تحلیل داده با پایتون (Python)
    • سبد خرید
  • ارتباط با ما
    • تماس
    • درخواست مشاوره
    • اینستاگرام
    • تلگرام
    • آپارات
    • یوتیوب
0
حساب کاربری

مقالات

تعریف و استفاده از متغیرها در DAX

در این بخش به تعریف و استفاده از متغیرها در  DAX می‌پردازیم؛ و تغییرات فروش را بین سال‌های مختلف محاسبه می‌کنیم. و همچنین با به‌دست آوردن مجموع فروش در هرسال، درصد تغییرات بین هرسال را مقایسه می‌کنیم.

 داده‌های ما  شبیه به جدول زیر می‌باشند:

Year Month Sales
2013 1 20
2013 2 25
2014 1 22
2014 2 23
2015 1 21
2015 2 31

  با استفاده از متغیرها می‌توان برخی مدل‌سازی داده‌ای خارق‌العاده را برای دریافت نتایج موردنظر اعمال کرد. در شکل زیر ما نتایج measure ها را در نمودارها می‌بینیم:

حال بیایید شروع کنیم:

Power BI را بازکنید و در نوار Home، بر روی Get data کلیک کرده و Blank Query را انتخاب کنید. Connect را بزنید تا پنجره Query Editor باز شود. در نوار View، بر روی دکمه Advanced Editor کلیک کرده و کد زیر را در پنجره ویرایشگر پیست کنید؛ و سپس با فشردن Done فرآیند بارگذاری داده را کامل کنید.

Let

Source = Excel.Workbook(Web.Contents(“https://powerbi.tips/wp-

content/uploads/2017/05/Clothing-Sales.xlsx”), null, true),

ClothingSales_Table = Source{[Item=”ClothingSales”,Kind=”Table”]}[Data],

#”Changed Type” = Table.TransformColumnTypes(ClothingSales_Table,{{“Date”, type

date}, {“Category”, type text}, {“Sales”, Int64.Type}}), #”Inserted Year” = Table.AddColumn(#”Changed Type”, “Year”, each

Date.Year([Date]), type number)

in

 #”Inserted Year”

داده‌های بارگذاری شده شما باید به شکل زیر باشد:

نام کوئری را به ClothingSales تغییر دهید و سپس Close&Apply را بزنید تا داده درون data model بارگذاری شود. حال ابتدا بر روی ستون Date موجود در قاب Fields و سپس بر روی Modeling کلیک کنید. در بخش Formatting فرمت آن را به Date Time تغییر دهید و فرمت M/d/yyyy را انتخاب کنید. مراحل بالا را برای ستون‌های زیر نیز انجام دهید.

برای فرمت ستون Sales، ابتدا Currency  و سپس گزینه (English (United States$ را بزنید.

برای فرمت year نیز Whole number را انتخاب کنید.

بعد از تغییر فرمت داده‌های مذکور حال شرایط فراهم است تا یک نمودار میله‌ای ساده بسازیم. تصویر زیر مربوط به تنظیمات نمودار میله‌ای می‌باشد.

برای شروع ما می‌خواهیم به محاسبه مجموع فروش‌ها بپردازیم. در تب Home بر روی New measure کلیک کنید و کد زیر را در آن بنویسید.

Total Selected Sales = SUM(ClothingSales[Sales])

از قسمت visualization یک Card را انتخاب کنید و سپس measure را در قسمت Fields قرار دهید.

روی Card کلیک کنید و سپس وارد قسمت Paint Roller شوید و تنظیمات Display unite را در Data label از حالت Auto به None تبدیل کنید تا مانند تصویر زیر عدد به‌صورت کامل نمایش داده شود.

حال می‌خواهیم باکمی تغییر در Card فرمت دلار را نیز نشان دهیم.

بر روی نوار Modeling کلیک کنید و فرمت آن را به Currency تغییر دهید سپس (English (United States$ را انتخاب کنید. فرمت نهایی Card باید به‌صورت تصویر زیر باشد.

حال ما می‌خواهیم گام‌های قبلی را برای measure های جدیدمان تکرار کنیم.

1-measure را بسازید.

2-فرمت Card را تغییر دهید.

3-فرمت measure را تغییر دهید.

Measure بعدی مجموع کل فروش سال گذشته را محاسبه می‌کند.

Prior Year Sales =

VAR

selectedYear = if( HASONEVALUE(ClothingSales[Year]),

        FIRSTNONBLANK(ClothingSales[Year],ClothingSales[Year]),

        BLANK() )-1

Return

       CALCULATE(

                   SUM(ClothingSales[Sales]),

                   ALL(ClothingSales),

                   ClothingSales[Year] = selectedYear)

حال توضیح خواهیم داد که در این measure چه اتفاقی می‌افتد.

 اول، ما با استفاده از VAR یک متغیر میسازیم و نام آن را SelectedYear می‌گذاریم که اگر چند سال باهم انتخاب شوند، این متغیر مقدار خالی را برمی‌گرداند که این شرط با استفاده از عبارت if و فرمول ()HASONEVALUE انجام می‌شود.

و Return این اجازه را به ما می‌دهد تا مقداری را بتوانیم به‌عنوان خروجی داشته باشیم. در این مثال ما از ()CALCULATE برای محاسبه مجموع فروش‌ها استفاده می‌کنیم و در این فرمول از 2 فیلتر استفاده می‌کنیم.

  اولین فیلتر تمام جدول را با استفاده از ()All انتخاب می‌کند و سپس فیلتر را از متغیر پیشنهادی قبلی با نام SelectedYear اعمال می‌کنیم.

 

همان مراحل قالب‌بندی 2و 3 را که قبلاً ذکر شد اعمال کنید. اکنون ما می‌توانیم یکی از سال‌ها را در نمودار میله‌ای انتخاب کنیم. انجام این کار باعث می‌شود تا دو measure ایجاد شود که یکی برای فروش کل سال انتخاب‌شده و دیگری برای سال قبل از فروش هست.

ما سال 2014 را انتخاب کردیم که فروش آن 11000 دلار است. ماوس را بر روی بخشی از نمودار که مربوط به سال 2013 است قرار دهید همان‌طور که می‌بینید نوک ابزار به‌طورکلی فروش 10000 دلار را نشان می‌دهد.

حال ما می‌خواهیم درصد تغییرات را محاسبه کنیم، برای این کار مانند زیر عمل کرده و یک measure می‌سازیم:

Percent Change = DIVIDE([Total Selected Sales],[Prior Year Sales],1)-1

روی نوار Modeling کلیک کنید و فرمت measure را به درصد تغییر دهید. حال یک measure نهایی مانند آنچه در زیر می‌بینید برای نشان دادن میزان تغییرات تعریف می‌کنیم:

Prior Year Delta = [Total Selected Sales] – if( [Prior Year Sales] = BLANK(),
[Total Selected Sales],[Prior Year Sales])

این measure، تغییرات کل را در میان دو سال انتخاب‌شده محاسبه می‌کند. دستور if در انتهای معادله، حالتی را بررسی می‌کند که اگر شما سال خاصی را انتخاب نکرده باشید سال پیشین را بطور پیش‌فرض صفر درنظر بگیرد.

درباره مبینا چزانی

دانش آموخته دانشگاه تهران، علاقه‌مند به کار در حوزه BI و شیفته یادگیری مطالب جدید هستم. و معتقدم هیچ گاه برای آموختن دیر نیست.

نوشته های بیشتر از مبینا چزانی
در تلگرام
کانال ما را دنبال کنید!
در اینستاگرام
ما را دنبال کنید!
مطالب زیر را حتما بخوانید
  • کاربرد پارامتر در پاوربی آی
    کاربرد پارامتر و تحلیل حساسیت در پاور بی آی

    3.91k بازدید

  • استفاده از متغیر و تابع EARLIER در زبان DAX

    2.61k بازدید

  • پانزده تابع DAX که باید حتما یاد بگیرید

    3.73k بازدید

  • تابع IF و SWITCH در زبان DAX

    2.37k بازدید

  • رنگ بندی شرطی با زبان DAX
    رنگ بندی شرطی با زبان DAX

    1.68k بازدید

  • مفهوم Context و انواع آن در زبان DAX
    مفهوم Context و انواع آن در زبان DAX

    1.98k بازدید

guest
تعداد ماههای سال به عدد
guest
0 نظر
قدیمی ها
جدید ها بیشترین رای
Inline Feedbacks
View all comments
جستجو
جستجو برای:
دسته بندی مطالب
  • Charts
  • DAX
  • Excel
  • Power BI
  • Power Query
  • تحلیل داده
  • هوش تجاری
پکیج های آموزشی
  • Data Analysis
  • Excel
  • Power BI
  • Power Query
  • Python
  • SQL
درباره گروه تحلیلگری

معتقدیم آموزش شروع یک تعهد بلند مدت است. این را از مشتریان ما سوال کنید.

اطلاعات تماس
  • تهران، خیابان دکتر فاطمی غربی، کوچه پروین
  • 42 12 600 - 0919 فقط تلگرام
  • info@tahlilgary.com
پیوندها
  • آموزش رایگان و اصولی اکسل (Excel)
  • دوره رایگان آموزش پاور بی آی (Power BI)
  • آموزش رایگان پاورکوئری (Power Query)
  • آمار و تحلیل داده با پایتون
  • دومین مسابقه‌ Power BI ایران
دسته بندی محصولات
Data Analysis Excel Power BI Power Query Python SQL
wpDiscuz

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت