Функції DAX у LuckyTemplates: використання ітераторів

Ітерація функцій DAX у LuckyTemplates або ітераторів є ключовими поняттями, які потрібно вивчити та добре зрозуміти. Я створив кілька навчальних посібників про те, як і коли використовувати ці функції у формулах DAX. Однак я бачив деякі плутанини з цими функціями в , тому я подумав, що було б гарною ідеєю обговорити деякі з цих проблем, з якими стикаються учасники LuckyTemplates, і показати вам рішення. 

Коли ви дізнаєтесь більше та заглибитеся у формули DAX, ви помітите, що використовуєте ітераційні функції частіше, ніж думаєте. Вони більш універсальні, ніж прості функції агрегації , такі як  SUM  або  AVERAGE , і я продемонструю це спочатку. 

Зміст

Використання AVERAGEX замість SUM 

У цій публікації на форумі учасник намагався узагальнити статистику безпеки на основі спостережень, зроблених особою, яка була записана з датою. Спостерігачі можуть вводити спостереження в ту саму дату, а також вони можуть вводити кілька спостережень щодня. Він хотів визначити середнє значення за період, і він створив такі розрахунки: 

Функції DAX у LuckyTemplates: використання ітераторів

Рішення було досить простим для такого типу аналізу. Я запропонував йому використовувати AVERAGEX замість логіки, яку він створив. Я порекомендував йому деякі з моїх посібників щодо ітерації функцій, особливо на AVERGEX.

Я також поділився з ним підручником, як обчислити загальну суму середніх . Тут важливо навчитися знати, через що ви хочете виконати ітерацію за допомогою вашої функції ітерації . Ви повинні зрозуміти.

Використання SUMX із функцією IF

Ще один приклад сценарію, який показує, що ітераційні функції є ключовими для використання, це . Учасник мав колонку з 0 і 1, залежно від конкретних критеріїв Стажиста. Йому потрібно було отримати суму зі стовпця X, якщо він дорівнює 0, і суму зі стовпця Y, якщо він дорівнює 1. Йому було важко створити контекст перевірки рядок за рядком у LuckyTemplates. Це були дані, з якими він працював:

Функції DAX у LuckyTemplates: використання ітераторів

І це був його розрахунок в Excel:

IF(CellA1=1 ; True ; False)

У цьому випадку ця логіка Excel, яку він створив, може і повинна бути завершена в міру в LuckyTemplates. Ось де з’являється сила ітераційних функцій. Це зразок формули, який я йому дав:

Функції DAX у LuckyTemplates: використання ітераторів

Тут я використовую SUMX з функцією IF , але ви також можете використовувати FILTER з CALCULATE подібним чином. Ще один приклад того, як і коли використовувати функції SUMX і IF, це , де учасник намагався створити комбінований план/фактичний прогноз на решту року. Ось як він зробив би це в Excel:

Функції DAX у LuckyTemplates: використання ітераторів

Його занепокоєння полягало в тому, що річний підсумок був неправильним. Формула, яку він створив, передбачає, що ExFactory має значення за рік, беручи це значення, а не обчислюючи кожен місяць, а потім підсумовуючи всі місячні результати.

Переглянувши дані, які він створив у LuckyTemplates, я виявив, що проблема була не лише у формулі, а й у тому, що учасник використовував обчислювані стовпці замість мір для своїх обчислень. Моя пропозиція, як я завжди згадував, працюючи з DAX, полягала в тому, щоб він почав із найпростіших заходів, таких як цей:

Функції DAX у LuckyTemplates: використання ітераторів

З цього він може використовувати ітераційні функції, щоб працювати з кожним рядком і запускати певну логіку.

Функції DAX у LuckyTemplates: використання ітераторів

Функції DAX у LuckyTemplates: використання ітераторів

Ітераційні функції дозволяють вам проходити через таблицю, віртуальну чи фізичну, і запускати логіку в кожному рядку.

Коли логіка завершена в кожному рядку, остаточне обчислення завершено. Як тільки ви це зрозумієте, вам буде легко включити ітераційні функції у ваші обчислення.

Інша важлива річ, на яку слід звернути увагу, полягає в тому, щоб усе було просто , не лише з вашими розрахунками, але й із вашими моделями . Це полегшить вам отримання бажаних результатів від аналізу за допомогою ітераційних функцій. Перегляньте мій, щоб дізнатися більше про правильну та ефективну організацію моделей.

Ітераційні функції та структура моделі

Я зіткнувся з численними занепокоєннями, висловленими на форумі щодо проблем, спричинених переважно надто складними моделями. Ось одна з них, у якій проблему можна легко вирішити за допомогою ітераційних функцій, але налаштована модель була неправильною.

Учасник хотів встановити контроль над активованими обліковими записами, але не мав продажів, підрахунку облікових записів і можливості ідентифікувати імена клієнтів.

Функції DAX у LuckyTemplates: використання ітераторів

У цьому сценарії це має бути лише комбінація функцій CALCULATE і FILTER або використовувати функції ітерації, такі як SUMX, COUNTX і AVERAGEX. Розуміння ітераційних функцій може допомогти вам вирішити подібні проблеми на рівні рядка. Однак, коли я подивився на модель, загальна настройка мене справді стурбувала.

Функції DAX у LuckyTemplates: використання ітераторів

Є деякі зв’язки, які здаються неправильними, і таблиця пошуку не потрібна. Учасник повинен був спочатку реорганізувати модель, щоб правильна формула працювала.




Висновок

Приклади, які я висвітлив у цій публікації, є питаннями, які поставили учасники форуму LuckyTemplates. Це поширені сценарії під час використання функцій DAX у LuckyTemplates, коли обчислення мають помилкові результати, оскільки використані функції є неправильними. Формули повинні мати ітераційні функції, які використовуються правильно.

Крім того, модель даних також може сприяти вирішенню проблеми з обчисленнями, коли в моделі є зв’язки, які не працюють. Зазвичай це трапляється, коли модель надто складна та погано налаштована. Розібравши це, ви зможете працювати над своїми формулами з правильною комбінацією DAX.

Як я завжди рекомендую, важливо добре розуміти концепції функцій DAX у LuckyTemplates, особливо ітераторів. Я сподіваюся, що ви зможете навчитися цьому допису та застосувати його у своїх звітах LuckyTemplates.

Все найкраще!

***** Вивчаєте LuckyTemplates? *****







Відкрийте для себе унікальні ідеї за допомогою функції TOPN LuckyTemplates

Відкрийте для себе унікальні ідеї за допомогою функції TOPN LuckyTemplates

У цьому блозі представлено функцію LuckyTemplates TOPN DAX, яка дає вам змогу отримувати унікальну статистику з ваших даних, допомагаючи вам приймати кращі маркетингові рішення.

Моделювання даних у LuckyTemplates за допомогою допоміжних таблиць

Моделювання даних у LuckyTemplates за допомогою допоміжних таблиць

Дізнайтеся про деякі фантастичні аналітичні прийоми, які ми можемо використовувати для моделювання даних у LuckyTemplates за допомогою таблиць підтримки DAX.

Розширений DAX для LuckyTemplates: впровадження логіки ранжування в унікальній статистиці

Розширений DAX для LuckyTemplates: впровадження логіки ранжування в унікальній статистиці

Тут ми зануримося в LuckyTemplates Advanced DAX і запровадимо логіку ранжирування, щоб отримати дуже унікальну інформацію. У цьому прикладі я також демонструю розгалуження міри.

Функція параметра LuckyTemplates «Що, якщо».

Функція параметра LuckyTemplates «Що, якщо».

У цьому блозі представлено нову функцію в LuckyTemplates — параметр аналізу «Що, якщо». Ви побачите, як це робить усе швидким і легким для аналізу сценарію.

Використовуйте розгалуження міри LuckyTemplates, щоб перевірити, чи зростає ваша маржа зі зростанням доходу

Використовуйте розгалуження міри LuckyTemplates, щоб перевірити, чи зростає ваша маржа зі зростанням доходу

Дізнайтеся, як визначити, чи добре зростає ваш дохід, перевіривши, чи зросла ваша маржа за допомогою розгалуження міри LuckyTemplates.

Параметри LuckyTemplates через редактор запитів

Параметри LuckyTemplates через редактор запитів

Дізнайтеся та зрозумійте, як можна створювати та використовувати параметри LuckyTemplates, які є потужною функцією редактора запитів.

Кругла гістограма – візуалізація для вашої інформаційної панелі

Кругла гістограма – візуалізація для вашої інформаційної панелі

У цьому підручнику буде обговорено створення круглої гістограми за допомогою Charticulator. Ви дізнаєтеся, як створити їх для звіту LuckyTemplates.

Функції та формули PowerApps | Вступ

Функції та формули PowerApps | Вступ

Дізнайтеся, як використовувати функції та формули PowerApps, щоб покращити функціональність і змінити поведінку в нашій програмі Canvas Power Apps.

Труба в R: підключення функцій за допомогою Dplyr

Труба в R: підключення функцій за допомогою Dplyr

У цьому підручнику ви дізнаєтесь, як об’єднати функції разом за допомогою оператора каналу dplyr мовою програмування R.

RANKX Deep Dive: функція LuckyTemplates DAX

RANKX Deep Dive: функція LuckyTemplates DAX

RANKX від LuckyTemplates дозволяє повернути рейтинг певного числа в кожному рядку таблиці, який є частиною списку чисел.