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

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

Зміст

Приклади сценаріїв

Ми проаналізуємо деякі з найважливіших сценаріїв, зокрема, коли посилатися на всю таблицю та назву поля всередині .

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

RANKX Сценарій 1: рейтинг клієнтів

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

Тож давайте почнемо з того, що відкриємо LuckyTemplates і натиснемо кнопку параметрів Total Sales на вкладці Key Measures , а потім перейдемо до New Measure . Напишіть міру для рейтингу клієнта (наприклад, «Рейтинг клієнта =»).

Ви можете переглянути результати, перетягнувши показник рейтингу клієнта всередину таблиці.

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

Але чи це найкращий підхід для кожного сценарію? Що робити, якщо є дві людини з однаковим іменем, але в різних містах? А що, якщо у нас є два місця з однаковою назвою, але на різних територіях?

RANKX Сценарій 2: Рейтинг міст V1

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

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

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

Результати виглядатимуть приблизно так:

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

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

Щоб вирішити цю проблему, потрібно посилатися на назву поля всередині функції RANKX і назву таблиці, як на зображенні нижче.

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

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

Він видалить дублікати, навіть якщо два міста доступні на двох різних територіях, таким чином об’єднавши їх як одне місто.

RANKX Сценарій 3: Рейтинг територій

Отже, що відбувається, коли рівень деталізації зменшується?

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

Щоб отримати правильні результати на територіальному рівні, потрібно посилатися на поле територій у таблиці регіонів. Але коли слід посилатися на всю тему таблиці та включати назву поля разом із таблицею?

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

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

Але коли рівень деталізації зменшується, нам доведеться посилатися на назву стовпця разом з назвою таблиці. Поки що ми аналізуємо результати лише в одному візуалі, тобто в таблиці.

Cities RankingV2: кращий підхід із використанням Slicer

Давайте скопіюємо другий сценарій, де ліва сторона візуалізації посилатиметься лише на ім’я таблиці, а права – на назву стовпця всередині функції RANKX. Потім ми порівняємо результати, розмістивши на цій сторінці роздільник у формі територій, результатом якого буде зображення нижче.

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

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

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

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

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

RANKX Сценарій 4: рейтинг продуктів

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

У цьому сценарії ми використовуємо назву продуктів із таблиці продуктів, щоб проаналізувати, які є нашими.

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

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

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

RANKX Сценарій 5: DAX Studio

Отже, давайте відкриємо DAX Studio і подивимося, як RANKX оцінює результати ранжирування на сервері.

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

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

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

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

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

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

Висновок

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

Найважливіше пам’ятати, що вам потрібно розуміти контекст, у якому розміщується ваша функція RANKX.

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

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

Суворий Аніл Джоші


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

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

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

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

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

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

Вилучення тем і зображень LuckyTemplates із PBIX

Вилучення тем і зображень LuckyTemplates із PBIX

Дізнайтеся, як розібрати файл PBIX, щоб витягти теми та зображення LuckyTemplates із фону та використовувати їх для створення звіту!

Шпаргалка формул Excel: Посібник середнього рівня

Шпаргалка формул Excel: Посібник середнього рівня

Шпаргалка формул Excel: Посібник середнього рівня

Календарна таблиця LuckyTemplates: що це таке та як ним користуватися

Календарна таблиця LuckyTemplates: що це таке та як ним користуватися

Календарна таблиця LuckyTemplates: що це таке та як ним користуватися

Python у LuckyTemplates: як встановити та налаштувати

Python у LuckyTemplates: як встановити та налаштувати

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

Розрахунок динамічної норми прибутку – легкий аналіз LuckyTemplates за допомогою DAX

Розрахунок динамічної норми прибутку – легкий аналіз LuckyTemplates за допомогою DAX

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

Сортування стовпців таблиці дат у LuckyTemplates

Сортування стовпців таблиці дат у LuckyTemplates

Дізнайтеся, як правильно сортувати поля зі стовпців розширеної таблиці дат. Це хороша стратегія для складних полів.

Знайдіть свої найкращі продукти для кожного регіону в LuckyTemplates за допомогою DAX

Знайдіть свої найкращі продукти для кожного регіону в LuckyTemplates за допомогою DAX

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

Вимір сміття: що це таке і чому це щось інше, але не сміття

Вимір сміття: що це таке і чому це щось інше, але не сміття

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