DAX (Data Analysis Expressions) زبانی قدرتمند برای پرس و جو و مدل‌سازی داده‌ها در Power BI است. در کنار توابع پایه و اساسی، DAX مجموعه ای از توابع پیشرفته ارائه می‌دهد که امکان انجام تحلیل‌های پیچیده و استخراج بینش‌های عمیق‌تر از داده‌ها را فراهم می‌آورند. این توابع به توسعه‌دهندگان Power BI اجازه می‌دهند تا محاسبات پیچیده، محاسبات زمان‌مند، و تحلیل‌های پیشرفته‌ای را پیاده‌سازی کنند که با توابع پایه قابل اجرا نیستند. در این مقاله به بررسی برخی از توابع پیشرفته DAX و نحوه استفاده از آن‌ها در تجزیه و تحلیل داده‌ها می‌پردازیم.توابع پیشرفته DAX

1. توابع CALCULATE و FILTER:

CALCULATE و FILTER دو تابع بنیادی و قدرتمند در DAX هستند که برای کنترل زمینه محاسبات و فیلتر کردن داده‌ها به کار می‌روند. CALCULATE محاسبه یک بیان را در یک زمینه جدید با اعمال فیلترها انجام می‌دهد. FILTER یک جدول را بر اساس شرط مورد نظر فیلتر می‌کند و جدول جدیدی را برمی‌گرداند. ترکیب این دو تابع، امکان ایجاد محاسبات پیچیده و هدفمند را بر اساس فیلترهای متنوع فراهم می کند.

مثال: محاسبه مجموع فروش در یک منطقه خاص:

مجموع فروش منطقه X = CALCULATE(SUM(Sales[Amount]), FILTER(Sales, Sales[Region] = “X”))
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها

در این مثال، FILTER فقط سطرهایی را که منطقه آن‌ها “X” است انتخاب می‌کند و CALCULATE مجموع فروش را بر روی این سطرهای فیلتر شده محاسبه می‌کند.توابع پیشرفته DAX

2. توابع زمان‌مند (Time Intelligence):

DAX توابع قدرتمندی برای تجزیه و تحلیل داده‌های زمانی ارائه می‌دهد. این توابع به شما امکان می‌دهند تا به‌راحتی محاسبات مختلف را بر روی داده‌های زمان انجام دهید، مانند محاسبه فروش در ماه گذشته، سال گذشته، یا به‌طور کلی در یک دوره زمانی خاص. مثال‌هایی از این توابع عبارتند از: SAMEPERIODLASTYEARDATEADDPARALLELPERIODTOTALYTDPREVIOUSMONTH.

مثال: محاسبه فروش سال گذشته در همین دوره:

فروش سال گذشته = SAMEPERIODLASTYEAR(SUM(Sales[Amount]))
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها

3. توابع ITERATOR:

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

مثال: محاسبه مجموع مربع فروش هر محصول:

مجموع مربع فروش = SUMX(Products, Products[SalesAmount] * Products[SalesAmount])
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها

4. توابع جدول (Table Functions):

توابع جدول مانند FILTERADDCOLUMNSSUMMARIZEGROUPBY جدید ایجاد می‌کنند یا جداول موجود را تغییر می‌دهند. این توابع برای دستکاری داده‌ها و آماده‌سازی آن‌ها برای محاسبات بعدی بسیار مفید هستند، اما استفاده غیر بهینه از آن‌ها می‌تواند به کاهش عملکرد منجر شود.

مثال: ایجاد یک جدول خلاصه از فروش براساس منطقه:توابع پیشرفته DAX

خلاصه فروش منطقه = SUMMARIZE(Sales, Sales[Region], "مجموع فروش", SUM(Sales[Amount]))
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها

5. توابع محاسبات پیشرفته:

توابع پیشرفته دیگری نیز در DAX وجود دارند که امکان انجام محاسبات و تحلیل‌های خاص را فراهم می‌کنند. این توابع شامل توابع آمارى (Statistical functions)، توابع متن (Text functions)، و توابع تاریخ و زمان (Date and time functions) می‌باشند. شناخت و استفاده از این توابع برای حل مسایل خاص در تجزیه و تحلیل داده‌ها بسیار مفید است.

مثال: استفاده از تابع RANKX برای رتبه‌بندی محصولات بر اساس میزان فروش:

رتبه فروش = RANKX(ALL(Products), Products[SalesAmount],,DESC)
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها
5 تابع مهم و اساسی از توابع پیشرفته DAX در تجزیه و تحلیل داده‌ها

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

  • بهینه‌سازی عملکرد: در هنگام استفاده از توابع پیشرفته، به‌ویژه توابع ITERATOR و توابع جدول، بهینه‌سازی عملکرد بسیار مهم است. استفاده از فیلترها و محدود کردن دامنه داده‌ها پیش از انجام محاسبات می‌تواند به طور قابل‌توجهی عملکرد را بهبود دهد.
  • خوانایی کد: نوشتن کد DAX به صورت خوانا و منظم بسیار مهم است. استفاده از VAR برای ذخیره‌سازی مقادیر موقت و شکستن کوئری‌های پیچیده به بخش‌های کوچک‌تر، خوانایی کد را بهبود می‌دهد.توابع پیشرفته DAX
  • درک کامل توابع: قبل از استفاده از هر تابع، مطمئن شوید که درک کاملی از نحوه عملکرد آن دارید. استفاده نادرست از توابع می‌تواند به نتایج غلط یا کاهش عملکرد منجر شود.
  • استفاده از DAX Profiler: ابزارهایی مانند DAX Profiler می‌توانند به شما کمک کنند تا عملکرد کوئری‌های DAX را تجزیه و تحلیل کنید و نقاط ضعف آن‌ها را شناسایی کنید.

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

https://empathyfy.com/

بدون دیدگاه

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