Все статьи

Используйте многопроходную агрегацию в Analytics Boards

Последнее обновление:

Команда документации Wrike

Команда документации Wrike

TL;DR

Используйте многопроходную агрегацию, чтобы выполнять расчёты на разных уровнях и избегать дублирования итоговых значений.

Примеры:

  • Среднее по проекту: AVG([Project ID],SUM([Task Effort (minutes)]))/60
  • Устранить дубли таймлогов: SUM([Timelog ID],MAX([Timelog Time Spent (minutes)]))/60

Таблица 4. Доступность

Доступность: Pinnacle, Apex. ; Недоступно: Free, Team, Business;

Overview

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

Расчёт значений на двух уровнях

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

Пример: средние трудозатраты проекта по папке

Предположим, что папка содержит несколько проектов. Вам нужно:

  • рассчитать общие трудозатраты задач для каждого проекта, и
  • вычислить среднее значение этих итогов по папке

Значение первого уровня:

SUM([Task Effort (minutes)])

SUM([Task Effort (minutes)]).png

Чтобы вычислить среднее значение по проекту, используйте:

AVG([Project ID],SUM([Task Effort (minutes)])) / 60

AVG([Project ID],SUM([Task Effort (minutes)])) : 60.png

Эта формула:

  • вычисляет общие трудозатраты задач для каждого проекта,
  • считает среднее значение этих итогов по проекту, и
  • преобразует минуты в часы

Исправить дублированные значения

Иногда простая формула возвращает число, намного превышающее ожидаемое. Это может произойти, если одно и то же значение учитывается несколько раз из-за структуры папок, настроек виджета или уровня данных.

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

Пример: дублированные итоговые значения таймлогов

Задача с названием «Flexible» находится в двух подпроектах под одним родительским проектом. Простое суммирование затраченного времени может показать 4 часа, хотя было зафиксировано лишь 2 часа.

Fix Duplicated Values.png

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

  1. Определите наименьший уникальный уровень для данных. Для данных таймлогов используйте [Timelog ID].
  2. Используйте неаддитивный агрегатор для значения. Замените SUM на MAX, AVG, MEDIAN или MIN.

    Use [Timelog ID].png
  3. Просуммируйте результат на уровне уникального ID.

Используйте эту формулу:

SUM([Timelog ID], MAX([Timelog Time Spent (minutes)]))/60

SUM([Timelog ID], MAX([Timelog Time Spent (minutes)])):60.png

Эта формула суммирует каждую уникальную запись таймлога один раз, а затем преобразует минуты в часы.

Note

Если в вашей текущей формуле используется SUM непосредственно для поля времени, замените этот внутренний SUM перед агрегацией по ID.

Что далее?

0 комментариев

Войдите в службу, чтобы оставить комментарий.

Верх