اصول DAX در Power BI

اصول DAX در Power BI

این مقاله برای کاربران جدید Power BI Desktop می باشد که یک معرفی سریع و آسان در مورد چگونگی استفاده از عبارات تجزیه و تحلیل داده برای حل تعدادی از مشکلات اساسی محاسبه و تجزیه و تحلیل داده ها را به شما می دهد

DAX چیست؟

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

چرا DAX حائز اهمیت است؟

خیلی راحت می توانید فایل جدید Power BI Desktop بسازید و داده ها را در آن وارد کنید. بدون استفاده از فرمول های DAX شما می توانید گزارش های بسازید که بینش ارزشمندی را به شما نشان دهد. اما اگر شما به تجزیه و تحلیل درصد رشد محصولات در تاریخ های متفاوت نیاز دارید چه می کنید؟ یا وقتی شما به محاسبه رشد یکساله خود در مقایسه با رغبا نیاز دارید چه می کنید؟ فرمول های DAX این قابلیت و قابلیت های برتر دیگه را در اختیار شما می گذارد. یادگیری چگونگی ایجاد فرمول های موثر DAX به شما این امکان را می دهد تا از داده های خود بیشترین استفاده را داشته باشید. وقتی که اطلاعات مورد نیاز خود را بدست می آورید می توانید مشکلاتی که تجارت شما را تحت تاثیر قرار داده اند را حل کنید.

پیش نیازها

شاید شما با نحوه ساختن فرمول در excel آشنا باشید این دانش برای درک DAX  مفید است حتی اگر تجربه ای در فرمول excel ندارید مفاهیمی که در اینجا توضیح داده شده اند به شما کمک می کند فرمول های DAX را ایجاد کنید و مشکلات واقعی BI را حل کنید. ما بر درک فرمول های DAX که در محاسبات و اندازه گیری ها و ستون های محاسبه شده استفاده می شوند تمرکز خواهیم کرد. شما باید از قبل با استفاده از Power BI برای وارد کردن داده ها و اضافه کردن فیلدها به گزارش آشنا باشید همچنین شما باید با مفاهیم اساسی اندازه گیری و ستون های محسابه شده آشنا باشید.

بیایید شروع کنیم

ما درک خود را از DAX با سه مفهوم اساسی شروع می کنیم: Syntax، Functions ،Context مفاهیم دیگری نیز مهم هستند اما درک این سه مفهوم باعث می شود شما مهارت های DAX خود را بسازید.

Syntax

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

به عنوان مثال یک نمونه فرمول DAX برای اندازه گیری

 

این فرمول شامل عناصر Syntax  ذیل است:

  1. نام اندازه گیری، فروش کل.
  2. علامت = که نشان دهنده شروع فرمول است که وقتی محاسبه شود نتیجه بر میگردد.
  3. عملکرد DAX SUM که تمام اعداد ستون Sales را جمع می کند.
  4. پرانتز عبارتی را که شامل یک یا چند استدلال است را احاطه می کند. همه ی توابع به حداقل یک استدلال نیاز دارند. یک استدلال مقدار به به تابع می دهد.
  5. جدول ارجاع شده، فروش.
  6. ستون ارجاع شده در جدول فروش با این استدلال تابع SUM می داند که کدام ستون را جمع کند.

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

Functions

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

DAX شامل دسته های توابع زیر می شوند:

تاریخ و زمان، هوش زمانی، اطلاعات، منطقی، ریاضی، آماری، متن، والدین/کودک و سایر توابع. اگر با توابع فرمول های اکسل آشنا هستید بسیاری از توابع DAX برای شما نیز آشنا خواهد بود اما توابع DAX در روش های زیر منحصر به فرد خواهد بود:

  • توابع DAX همیشه به یک ستون یا یک جدول ارجاع داده می شوند. اگر شما میخواهید فقط از مقادیر خاص جدول یا ستون استفاده کنید می توانید فیلترها را به فرمول اضافه کنید.
  • اگر شما نیاز دارید محاسبات را به صورت ردیف به ردیف تنظیم کنید DAX توابع را فراهم می کند تا به شما امکان دهد از مقادیر ردیف فعلی یا یک مقدار مرتبط به عنوان نوعی استدلال استفاده کنید تا محاسباتی را که متناسب با متن متفاوت هستند را انجام دهید.
  • DAX شامل توابع بسیاری می شود که به جای مقادیر جدول را برمیگرداند. جدول نمایش داده نمی شود اما برای آماده سازی ورود به توابع دیگر استفاده می شود. برای مثال شما می توانید یک جدول را بازیابی کنید و سپس مقادیر متمایز را در آن محاسبه کنید یا جمع داینامیک در جدول یا ستون های فیلتر شده را محسابه کنید.
  • DAX شامل انواع توابع هوش زمانی می شود. این توابع این امکان را به شما می دهند که محدوده تاریخ را تعیین کنید و محاسبات را براساس آنها انجام دهید. برای مثال شما می توانید مبالغ را در دوره های موازی مقایسه کنید.
  • اکسل تابعی معروف به نام VLOOKUP دارد. توابع DAX یک سلول یا یک محدوده سلول را به عنوان مرجعی مانند VLOOKUP در اکسل انجام نمی دهد. توابع DAX یک ستون یا یک جدول را به عنوان مرجع در نظر می گیرند. این را در ذهن داشته باشید که شما در Power BI Desktop با یک مدل داده رابطه ای کار می کنید. جستجوی مقادیر در جدول دیگر آسان است و در بیشتر مواقع شما به ساختن فرمول نیاز ندارید. همانطور که می دانید توابع موجود در DAX می توانند به شما در ساخت فرمول های قدرتمند کمک کنند.

 

Context

Context یکی از مهم ترین عناصر DAX می باشد. دو نوع Context در DAX وجود دارد: row context و filter context.

Row Context

Row Context به راحتی ردیف فعلی تصور می شود. هر زمانی که فرمولی تابعی داشته باشد که فیلترها را برای شناسایی در یک ردیف جدول اعمال می کند، اعمال می شود. این تابع یک متن ردیف را برای هر ردیف از جدول که روی آن فیلتر است اعمال می کند. این نوع ردیف بیشتر در اندازه گیری استفاده می شود.

Filter Context

درک Filter Context از Row Context کمی سخت تر است. شما می توانید filter context را به این صورت در نظر بگیرید: یک یا چند فیلتر در محاسبه اعمال شده که مقدار یا نتیجه را تعیین کنند. Filter context به جای row context وجود ندارد بلکه علاوه بر متن، ردیف نیز اعمال می شود. برای مثال برای محدود کردن مقادیر بیشتر در محاسبه شما می توانید filter context  را اعمال کنید که نه تنها row context  را مشخص می کند بلکه مقدار خاصی را در نیز در row context مشخص می کند.

Filter context به راحتی در گزارشات شما قابل مشاهده است. برای مثال وقتی شما یک totalcost را به یک مصور اضافه می کنید و سپس Year و Region را اضافه می کنید شما در حال تعریف یک filter context  هستید که زیر مجموعه ای را برحسب سال و منطقه مشخص، انتخاب می کند.

Filter context برای چه در DAX مهم است؟ زیرا می توان با اضافه کردن زمینه ها به یک تجسم به راحتی filter context را اعمال کنید همچنین filter context می تواند با تعریف فیلتر با استفاده از توابع All filters و Related  با توجه به روابط و سایر فرمول ها اعمال شود.

به عنوام مثال فرمول در اندازه گیری store sales:

 

این فرمول شامل عناصر Syntax ذیل است:

  1. نام اندازه گیری، Store Sales
  2. علامت = که نشان دهنده شروع فرمول می باشد.
  3. تابع CALCULATE که یک عبارت را به عنوان استدلال ارزیابی می کند و توسط فیلترهای مشخص شده اصلاح می شود.
  4. پرانتز عبارتی را که شامل یک یا چند استدلال است را احاطه می کند.
  5. اندازه گیری کل فروش در آن جدول به عنوان یک عبارت. اندازه گیری کل فروش فرمول SUM(Sales[SalesAmount]) دارد.
  6. یک کاما (،) که اولین استدلال عبارت را از فیلتر جدا می کند.
  7. ستون مرجع کاملاً واجد شرایط است این row context ما است هر ردیف در این ستون یک کانال را مشخض می کند مثل Store یا online.
  8. یک مقدار خاص، ذخیره، به عنوان فیلتر. این filter contect است.

 

خلاصه

حالا شما به درک اساسی راجب مفاهیم مهم DAX رسیده اید، شما می توانید فرمول های DAX را شروع کنید. یادگیری DAX ممکن کمی سخت باشد ولی منابع بسیاری را در دسترس شما قرار می دهد. پس از مطالعه این مقاله می توانید با سایر مفاهیم و فرمول های DAX که می توانند شما را در حل مشکلاتتان کمک کنند اطلاعات بیشتری کسب کنید. از آنجایی که چندین سال است که DAX در سایر ابزارهای Microsoft BI مانند Power Pivot، Analysis Services Tabular models، وجود دارد. اطلاعات بسیار خوبی در این زمینه به شما می دهد.

 

 

 

متن اصلی: https://docs.microsoft.com/en-us/power-bi/transform-model/desktop-quickstart-learn-dax-basics

آخرین مطالب