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

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

تابع SUMMARIZE یکی از توابع  زبان DAX می باشد که از این تابع برای گروه بندی کردن نتایج استفاده می شود.

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

شکل کلی نوشتاری تابع summarise به فرم زیر می باشد.

SUMMARIZE(<table>,<groupBy_columnName>[,<groupBy_columnName>]…[, <name>, <expression>]…)

خروجی این تابع یک جدول می باشد.

مثال:

فرض می کنیم در محیط POWER BI جدولی داریم شامل ستون شماره فاکتور، نام کالا، تعداد فروش و سال فروش.

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

حال می خواهیم با استفاده از تابع SUMMARIZE تعداد فروش هر کالا را به تفکیک سال محاسبه کنیم. به این منظور یک Table جدید ایجاد می کنیم و دستور زیر در آن می نویسیم. دلیل ایجاد جدول جدید این است که خروجی این تابع یک جدول است.

Table 2 = SUMMARIZE(‘Table’,’Table'[کالا],’Table'[سال فروش],”مجموع”,sum(‘Table'[تعداد فروش]))
نتیجه حاصل شده به شکل زیر می باشد و همان طور که مشاهده می کنید تعداد فروش هر کالا به تفیک کالا و سال فروش گروه بندی شده است.
تابع SUMMARIZE در زبان DAX
شکل تابع summarise()به مانند دیگر توابع کتابخانه dplyr است. با این تابع می‌توان یک متغیر محاسباتی براساس تابعی که معرفی می‌کنید ایجاد کرد.
summarise(df, variable_name=condition)
:arguments
`df`: Dataset used to construct the summary statistics –
`variable_name=condition`: Formula to create the new variabl –

پارامتر اول نام «چارچوب داده» (Data Frame) و پارامتر دوم نام متغیر و نحوه محاسبه این متغیر جدید است. برای مثال اگر قرار باشد که میانگین متغیر R را در چارچوب داده data محاسبه کرده و در متغیر mean_run قرار دهیم، باید شکل دستوری summarise به صورت زیر نوشته شود.

summarise(data, mean_run =mean(R))

نتیجه ایجاد متغیر mean_run با مقدار 19.20144 خواهد بود. همین کار را برای متغیرهای دیگر نیز می‌توان در یک دستور انجام داد. برای مثال، کد زیر میانگین را برای متغیرهای G و SH محاسبه می‌کند. البته برای متغیر SH‌ پارامتر na.rm=TRUE نشان می‌دهد که باید مقادیر ناموجود (گمشده) که با NA در مجموعه داده data ثبت شده‌اند حذف و سپس محاسبه میانگین صورت گیرد.

,summarise(data, mean_games = mean(G)

mean_SH = mean(SH, na.rm = TRUE))

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Fill out this field
Fill out this field
لطفاً یک نشانی ایمیل معتبر بنویسید.
You need to agree with the terms to proceed

مطالب پیشنهادی