Рейтинг LuckyTemplates и пользовательская группировка

Рейтинг LuckyTemplates и пользовательская группировка

Как аналитикам данных, нам часто приходится группировать и ранжировать значения из набора данных, чтобы генерировать тенденции и идеи. Однако не все знают, как легко выполнять эти задачи с помощью LuckyTemplates.

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

В этом руководстве мы будем использовать таблицу данных с тремя столбцами, а именно идентификаторы записей , приоритеты и минуты . Наша цель — определить 5% лучших записей с приоритетом 1 или 2 на основе максимального количества минут.

Оглавление

Набор данных для создания рейтинга и группировки LuckyTemplates

Вот как набор данных выглядит в Power Query. У него нет атрибута для отделения приоритетов 1 и 2 от остальных, что требует от нас использования М-функции Table.Partition . Это создаст вспомогательный столбец для отделения приоритетов 1 и 2 от других строк.

Рейтинг LuckyTemplates и пользовательская группировка

Функция LuckyTemplates: Table.Partition

Чтобы изучить, как использовать Table.Partition для сегментации наших данных, мы начнем с открытия расширенного редактора .

Рейтинг LuckyTemplates и пользовательская группировка

В появившемся окне добавьте новую строку для создания новой переменной. Назовем переменную Partitions . Добавьте функцию Table.Partition , для которой требуется следующая информация.

  • Таблица, которую мы хотим разделить. В нашем случае это Источник.
  • Столбец для оценки. Это столбец в таблице возврата, в который будут помещены правила. Это будет столбец «Приоритет» .
  • Количество создаваемых групп. Это также относится к количеству таблиц для разделения, и мы хотим иметь 2 таблицы. 
  • Хеш-функция. Чтобы получить хеш-значение, нам нужно использовать число. Давайте начнем хэш-функцию с каждого if, за которым следует символ подчеркивания, представляющий текущее значение. Затем давайте добавим условие меньше трех , а затем вернем ноль, иначе один

В строке 5 мы изменим Source на Partitions , что даст нам следующее решение.

Рейтинг LuckyTemplates и пользовательская группировка

Нажмите «Готово» , чтобы увидеть, как это повлияет на нашу таблицу. Как показано ниже, функция Table.Partition создает список с двумя вложенными таблицами

Рейтинг LuckyTemplates и пользовательская группировка

При нажатии Таблица 1 открывается таблица предварительного просмотра, содержащая все записи с приоритетом меньше трех (приоритеты 1 и 2).

Рейтинг LuckyTemplates и пользовательская группировка

 Все остальные строки находятся в Таблице 2 .

Рейтинг LuckyTemplates и пользовательская группировка

Поскольку приоритеты 1 и 2 теперь сгруппированы в одной таблице, теперь мы можем использовать таблицу для расчета 5% лучших. 

Функция LuckyTemplates: Table.RowCount

Table.RowCount можно использовать для определения количества строк , необходимых для удовлетворения требования 5%. Он подсчитает количество строк с приоритетами 1 и 2, а затем получит 5% от полученного числа.

Для начала откройте окно расширенного редактора в левом верхнем углу.

Рейтинг LuckyTemplates и пользовательская группировка

Затем мы добавим новую строку и новую переменную, которую назовем nRow. Нам нужно извлечь нашу первую таблицу, скопировав имя ее переменной Partitions из строки 3.

Далее мы будем использовать оператор позиционного индекса для доступа к первому элементу в списке первой таблицы. Затем оберните оператор Table.RowCount вокруг Partitions(0). Затем мы умножим его на 0,05, чтобы получить 5%. 

Кроме того, округляйте число до нуля с помощью функции Number.Round . Наконец, мы изменим последнюю строку с Partitions на nRow. 

Рейтинг LuckyTemplates и пользовательская группировка

Это должно вернуть два, как показано ниже.

Рейтинг LuckyTemplates и пользовательская группировка

Результат означает, что для выполнения требования 5% нам нужно пометить две строки из таблицы 1. Для этого мы можем использовать новую М-функцию Table.AddRankColumn. 

Функция LuckyTemplates: Table.AddRankColumn

В этом разделе мы будем использовать функцию LuckyTemplates Rank для ранжирования наших строк. Table.AddRankColumn используется для добавления нового столбца ранжирования в таблицу на основе наших критериев сравнения .

Для начала откройте окно расширенного редактора . Создайте таблицу 1 и назовите ее t1 в новой строке. Затем используйте Table.AddRankColumn и добавьте нашу первую таблицу Partitions (0). Нам также нужно назначить новое имя столбца, которое мы назовем i.

Для критериев сравнения мы хотим ранжировать минуты от большего к меньшему, используя {"Minutes", Order.Descending}

Наконец, добавьте RankKind=RankKind.Ordinal . Это приведет к тому, что всем элементам будет присвоен уникальный номер, даже если они оцениваются как равные. Затем мы изменим nRow на t1 , чтобы вернуть таблицу 1. 

Наше решение должно выглядеть так. 

Рейтинг LuckyTemplates и пользовательская группировка

Нажмите «Готово» , чтобы получить таблицу, подобную этой. 

Рейтинг LuckyTemplates и пользовательская группировка

Добавление логического фильтра

Мы также добавим в нашу таблицу логический фильтр, потому что мы больше не хотим сохранять столбец рангов. Вместо этого мы хотим добавить логический фильтр, чтобы идентифицировать только две верхние строки, которые нам нужно исключить. 

Итак, вернемся в окно расширенного редактора и добавим пользовательский столбец. Добавьте новую строку с помощью функции Table.AddColumn и вызовите новый столбец Exclude .

Для генератора столбцов мы можем просмотреть вновь созданный столбец, используя каждый i, меньший или равный нашему номеру nRow, который представляет собой количество строк, которые нужно исключить. Мы также назначим им тип данных, используя тип логического .

Наше решение должно выглядеть так.

Рейтинг LuckyTemplates и пользовательская группировка

Нажмите «Готово» , чтобы получить таблицу, похожую на приведенную ниже.

Рейтинг LuckyTemplates и пользовательская группировка

Функция LuckyTemplates: Table.RemoveColumns

Нам больше не нужен наш вспомогательный столбец, поэтому мы можем удалить его из нашей таблицы. 

Итак, в окне Advanced Editor воспользуемся Table.RemoveColumns и удалим столбец i .

Рейтинг LuckyTemplates и пользовательская группировка

Затем нажмите Готово

Рейтинг LuckyTemplates и пользовательская группировка

Объединение таблиц

Мы создали новую версию нашей вложенной таблицы 1, и нам нужно создать такой же макет для нашей вложенной таблицы 2. И для этой таблицы нам нужно добавить столбец исключения, где все значения должны быть равны TRUE. 

В расширенном редакторе создайте новую переменную с именем t2. Мы добавим пользовательский столбец с помощью Table.AddColumn и вызовем Partitions(1) . Затем добавьте столбец Exclude и задайте для генератора столбцов значение true, введите logical

Мы хотим вернуть t2 , отредактировав строку 13.

Рейтинг LuckyTemplates и пользовательская группировка

У нас должна получиться вот такая таблица.

Рейтинг LuckyTemplates и пользовательская группировка

Последнее, что нам нужно сделать, это снова объединить эти две таблицы. В окне расширенного редактора добавьте новую переменную с именем t, которая равна t1 и t2

Рейтинг LuckyTemplates и пользовательская группировка

Нажмите «Готово» , чтобы получить итоговую таблицу, похожую на приведенную ниже. Теперь у нас есть таблица, ранжированная и сгруппированная на основе заданных нами критериев, а 5% лучших помечены для исключения.

Рейтинг LuckyTemplates и пользовательская группировка


Анализ ранжирования в LuckyTemplates: дополнительные сведения из комбинированных наборов данных
Визуализация ранжирования в LuckyTemplates — динамические визуальные
измерения и группы LuckyTemplates для фильтрации таблиц в отчетах

Заключение

В этом блоге вы узнали, как использовать функции Table.Partition , Table.AddRankColumn и Table.RemoveColumns в Power Query. Наш образец набора данных имеет 44 строки с приоритетами 1 и 2, которые мы успешно сгруппировали и ранжировали, при этом 5% лучших отмечены соответствующим образом.

Благодаря этим новым знаниям об использовании этих функций вы теперь можете использовать функции ранжирования и пользовательской группировки LuckyTemplates для своего следующего набора данных.

Всего наилучшего,

Мелисса де Корте


Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать