• مسابقه 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 در Power Bi قسمت دوم

در ادامه آموزش سریالی زبان DAX به آموزش DAX در Power Bi قسمت دوم می رسیم. در این قسمت به بررسی Data Model می پردازیم. نحوه عملکرد کد های DAX به طور کامل بستگی به مدل داده شما دارد. مدل سازی داده تعیین می کند که کد های شما به چه میزان پیچیده باشند و عملکرد آن ها چگونه باشد.

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

Data Model چیست؟

Data Model در واقع مجموعه ای از جداول و روابط هستند. جداول از مجموعه ای از سطر ها و ستون ها تشکیل می شوند که هر ستون حاوی یک ویژگی است که نوع داده ای (Data Type) خاصی را میزبانی می کند. به طور مثال جدول مشتری می تواند شامل یک ستون مانند جنسیت باشد. در واقع جنسیت یک ویژگی از جدول مشتری است.

یک جدول هم به خودی خود می تواند یک مدل داده ساده محسوب شود. مدل سازی لزوما یک کار عجیب و غریب و پیچیده نیست و می تواند به سادگی ایجاد یک جدول در اکسل باشد.

از طرفی دیگر، مدل داده می تواند شامل چندین جدول باشد که با روابط (Relationship) با هم ارتباط برقرار کرده اند. مدل سازی داده اگر چه کار پیچیده ای نیست اما می تواند به شما قدرت شگرفی در نوشتن کد های DAX ارائه کند.

اگر بر روی برچسب Data Modeling را در انتهای همین مطلب کلیک کنید به مطالب بسیار مفیدی خواهید رسید. آن ها را به دقت مطالعه کنید و قدم های ابتدایی خود را محکم بردارید.

آموزش DAX در Power Bi قسمت دوم

روابط در Power BI

همان طور که در تصویر مشاهده می کنید معمولا روابط به صورت یک به چند هستند. طرف یک با عدد یک نمایش داده شده و طرف چند با علامت * نمایش داده می شود.

این رابطه بر اساس ستون های مشترک در دو جدول ایجاد می شود. توجه کنید که حتما و حتما ستون مشترک در طرف یک رابطه (سمت 1) باید دارای مقادیر یکتا باشد و گرنه این رابطه ایجاد نخواهد شد.

نحوه تشخیص سمت یک و چند به این ترتیب است که به ازای یک نمونه از جدول سمت 1، چندین نمونه در سمت چند رابطه وجود دارد. به طور مثال بین 2 جدول کالا و فروش رابطه یک به چند وجود دارد.

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

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

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

به مثال زیر توجه کنید.

جنسیت یک ویژگی از جدول مشتریان (Customer) است. جدول مشتریان در سمت یک رابطه و جدول فروش در سمت چند رابطه قرار گرفته است. اعداد و ارقام مربوط به فروش مانند قیمت و تعداد کالای فروش رفته در سمت چند رابطه هستند. پس ویژگی های جدول مشتریان می تواند اعداد و ارقام موجود در جدول فروش را برش بزند.

کافی است ویژوالی انتخاب کرده و یک ویژگی از جدول مشتریان مانند جنسیت، سن، تحصیلات و … را به عنوان Dimension انتخاب کنید و ویژگی هایی از جدول فروش مانند تعداد فروش را در Value قرار دهید. همه چیز مطابق انتظار پیش می رود و تعداد فروش به تفکیک جنسیت نمایش داده می شود.

آموزش DAX در Power Bi قسمت دوم

همان طور که در تصویر زیر مشاهده می کنید جهت روابط از سمت جدول مشتری به سمت جدول فروش است، پس جدول هر ویژگی از جدول مشتریان می تواند اعداد و ارقام جدول فروش را فیلتر کند.

Data Modeling

دقت کنید لازم نیست جداول مورد نظر مستقیم به هم متصل باشند. کافیست روابط آن ها در یک امتداد باشند. به جدول گروه کالا (Category) دقت کنید. این جدول نیز می تواند اطلاعات جدول فروش را برش بزند چرا که تا جدول فروش رابطه در یک جهت حرکت می کند.

در واقع ویژگی های جدول گروه کالا به عنوان سمت یک رابطه با جدول زیر گروه کالا (Subcategory)، اطلاعات جدول زیر گروه کالا را برش می زند، حال جدول زیر گروه کالا خود به عنوان جدول سمت یک رابطه با جدول کالا، جدول کالا را فیلتر نموده و جدول کالا به عنوان سمت یک رابطه با جدول فروش، اطلاعات جدول فروش را برش می زند.

حال سعی می کنیم بر اساس یک ویژگی از جدول مشتریان، تعداد کالا ها را برش بزنیم. آیا این امر امکان پذیر است؟ آفرین! درست حدس زدید. این ممکن نیست. چرا که روابط آن ها در یک امتداد نیست.

آموزش DAX در Power Bi قسمت دوم

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

پس از جدولی که قرار است بر اساس ویژگی های آن فیلتر را انجام دهید شروع به حرکت کنید. تا زمانی که زنجیره 1 به چند در یک امتداد حرکت می کند برش زدن اعداد و ارقام امکان پذیر است. به محض عوض شدن جهت روابط، انتشار فیلتر متوقف می شود.

آموزش DAX در Power Bi قسمت دوم

خب به پایان آموزش DAX در Power Bi قسمت دوم رسیدیم. حتما و حتما برچسب Data Modeling را در سایت دنبال کنید و مطالب مربوط به آن را مطالعه کنید.

درباره حسین وثوقی

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

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

    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
4 نظر
قدیمی ها
جدید ها بیشترین رای
Inline Feedbacks
View all comments
امیر حسن معظمی
امیر حسن معظمی

سپاس از شما، برای بیان ساده و نکات کاربردی

0
پاسخ
حسین وثوقی
حسین وثوقی
نویسنده
در پاسخ به  امیر حسن معظمی

سلام .. ممنون از همراهی شما

0
پاسخ
statis
statis

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

0
پاسخ
حسین وثوقی
حسین وثوقی
نویسنده
در پاسخ به  statis

سلام
ممنون از لطف شما

0
پاسخ
جستجو
جستجو برای:
دسته بندی مطالب
  • 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

ورود

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

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