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

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

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

مقالات

آموزش Power BI: قسمت یازدهم (تابع CALCULATE در زبان DAX)

در ادامه آموزش سریالی Power BI صفر تا سکو به بررسی یکی از مهمترین توابع در زبان DAX می پردازیم.

در این مطلب به بررسی تابع CALCULATE در زبان DAX که یکی از مهمترین توابع این زمان به شمار می رود، می پردازیم. بعید می دانم کسی با Power BI یا Power Pivot کار کرده باشد و از این تابع استفاده نکرده باشد.

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

تابع CALCULATE در Power BI

تابع CALCULATE

برای استفاده از تابع CALCULATE در زبان DAX به طریق زیر عمل می کنیم.

CALCULATE
CALCULATE(<expression>,<filter1>,<filter2>…)

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

فیلتر در تابع CALCUALTE

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

SalesAmount
SalesAmount = SUMX(FactInternetSales,FactInternetSales[OrderQuantity] * FactInternetSales[UnitPrice])

حال با استفاده از تابع CALCUALTE به طریق زیر میزان فروش کالاهای قرمز رنگ را محاسبه می کنیم. در واقع در آرگومان اول از میزان فروش که قبلا مژر آن را ایجاد کردیم استفاده شده و در آرگومان دوم گفتیم که فقط برای کالاهای قرمز رنگ محاسبه را انجام دهد.

RedSales
RedSales = CALCULATE([SalesAmount], DimProduct[Color] = “Red”)

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

تابع CALCULATE در DAX

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

برای این منظور به ترتیب زیر عمل می کنیم.

RedSalesToFemale
RedSalesToFemale = CALCULATE([SalesAmount] , DimProduct[Color] = “Red” , DimCustomer[Gender] = “F”)

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

تابع CALCULATE در زبان DAX

تابع CALCULATE و ALL

از ترکیب این 2 تابع می توان گزارش های ارزشمندی ایجاد کرد. ALL فیلتر ها را نادیده می گیرد. مژر زیر را در نظر بگیرید.

AllSales
AllSales = CALCULATE([SalesAmount],ALL(FactInternetSales))

حال نتیجه این مژر را مشاهده کنید. همان طور که مشاهده می کنید تمامی اعداد با هم برابر هستند. این به دلیل وجود تابع ALL است که فیلتر ها را نادیده گرفته است.

calculate-dax

خب! این گزارش به چه دردی می خورد؟! آفرین. درست حدس زدید. این مژر به تنهایی دردی دوا نمی کند! این مژر به ما کمک می کند که درصد را محاسبه کنیم. در واقع برای محاسبه درصد فروش هر گروه کالا باید از این مژر کمک بگیریم. کافی است میزان فروش هر گروه کالا را بر کل فروش تقسیم کنیم.

SalePct
SalePct = DIVIDE([SalesAmount] , [AllSales])

در نهایت نتیجه را در گزارش زیر مشاهده می کنید.

تابع CALCULATE در Power BI

برچسب ها: Power BI صفر تا سکو
درباره حسین وثوقی

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

نوشته های بیشتر از حسین وثوقی
در تلگرام
کانال ما را دنبال کنید!
در اینستاگرام
ما را دنبال کنید!
مطالب زیر را حتما بخوانید
  • داده های نمونه و تمرینی برای یادگیری پاور بی آی | Power BI

    2.27k بازدید

  • تنظیم مقدار پیش فرض اسلایسر تاریخ در Power BI

    886 بازدید

  • دومین مسابقه بزرگ Power BI ایران

    1.46k بازدید

  • نمونه پروژه داده های اقتصادی با Power BI

    1.46k بازدید

  • نمونه پروژه قند مواد غذایی با Power BI

    1.43k بازدید

  • اولین مسابقه طراحی داشبورد با Power BI

    2.58k بازدید

عضویت
به دوستتان خبر دهید.
guest
تعداد ماههای سال به عدد
guest
4 نظر
قدیمی ها
جدید ها بیشترین رای
Inline Feedbacks
View all comments
زینب کاشانی
زینب کاشانی

عالی و مفید – مرسی

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

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

0
پاسخ
زهرا
زهرا

من میخوام یه تابعی بنویسم که بیاد و سطر به سطر داده یک ستون رو بر داده های ستون دیگه تقسیم کنه و نشون بده. به طوری که وقتی توی ویژال جدول روی اسمش کلیک میکنم نشون بده و وقتی چیزی رو انتخاب نمیکنم بیاد داده های ستون اول رو جمع کنه و بر جمع داده های ستون دوم تقسیم کنه و نشون بده.
چه تابعی این کارو میکنه؟

0
پاسخ
پوریا بغدادی
پوریا بغدادی
مدیر سایت
در پاسخ به  زهرا

CalculatedColumn =
IF(
HASONEVALUE(‘Table'[ID]), — جایگزین ‘Table’ با نام جدول واقعی و ‘ID’ با ستون کلید اصلی
DIVIDE(‘Table'[Column1], ‘Table'[Column2]),
DIVIDE(SUM(‘Table'[Column1]), SUM(‘Table'[Column2]))
)

0
پاسخ
جستجو
جستجو برای:
دسته بندی مطالب
  • Charts
  • DAX
  • Excel
  • Power BI
  • Power Query
  • تحلیل داده
  • هوش تجاری
پکیج های آموزشی
  • Data Analysis
  • Excel
  • Power BI
  • Power Query
  • Python
  • SQL
درباره گروه تحلیلگری

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

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

ورود

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

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