Таблица - Подсчет элементов в измерении в зависимости от того, в какой месяц они попадают - PullRequest
0 голосов
/ 02 февраля 2019

Я новичок в Tableau (думал, что провел годы, работая в R и Python), похоже, отличается в том, как он обрабатывает вещи, или я просто не думаю, что правильно.

У меня есть источники данных с данными обучения (обучение сотрудников и статус).Суть в том, чтобы создать панель мониторинга, показывающую процент просроченных тренировок.У меня есть вся логика для этого, но я застрял на чем-то.

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

Теперь мне нужно рассчитать год (не месяцы, а год, основываясь на нескольких разных вещах), поэтому мой первый шаг - мне нужно получить «Total Training Due» за декабрь 2018 года.У меня есть измерение под названием «Срок выполнения месяца», которое представляет собой число (1,2,3,4 и т. Д.), Представляющее месяц.Итак, основываясь на том, что я наблюдал, мне просто нужно сделать небольшое заявление IF, вот так (имейте в виду, что это только для данных 2018 года прямо сейчас):

IF [Due Month] = MAX[Due Month] THEN COUNT[Employee ID] END

Я знаю, что это неточный контекст, но это своего рода то, что я ищу.Таким образом, для 2018 года это будет означать, что для всех строк, которые имеют 12-й месяц, я хочу подсчитать их (каждая строка является уникальным требованием к обучению) и я хочу получить итоговую сумму за последний месяц в наборе данных.Моя общая цель - создать нужный мне расчет на новом листе с одним вычисляемым полем (см. Изображение ниже электронной таблицы Excel и расчет J10).Тогда я могу использовать панель инструментов, чтобы объединить все.Я думал о итоговой строке внизу, но не хватает способов изменить итоги, чтобы настроить ее так, как мне нужно.Я подумал, что приборная панель - это тот способ, с помощью которого можно копировать каждую часть на свой лист.

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

Spreadsheet

Как вы можете видеть, вычисления в J10 довольно странные, ничего страшного для Excel, ноЯ изо всех сил пытаюсь повторить это в Таблице.Вот то, что у меня есть в моей Таблице до сих пор, я нахожусь на 90% пути, мне просто нужен последний расчет.Я скопировал основную таблицу и решил, что я сделаю калькуляцию J10 на новом листе и просто соберу их вместе на Dahsboard.Единственное, я хочу, чтобы это работало, когда поступают новые данные, поэтому я не хочу жестко кодировать цифры месяца, я хочу, чтобы они были динамическими.Вот то, что у меня на столе до сих пор:

Tableau

Заранее спасибо !!

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Спасибо за это - после публикации я смог придумать следующее:

(TOTAL([Incomplete Overdue]) + SUM(IF ([Past Due]<0 AND INT([Due Month]) = {MAX(INT([Due Month]))}) THEN 1 ELSE 0 END)) / COUNT(IF INT([Due Month]) = {MAX(INT([Due Month]))} THEN [Employee ID] END)

, который работает для основного результата, который я искал.

0 голосов
/ 02 февраля 2019

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

{FIXED [Due Year] : sum([Incomplete Overdue])}

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

Это вычисление LOD, [Срок исполнения] означает, что вы хотите, чтобы результат был измерен только измерением [Срок выполнения], поэтому вы будете получать разные результаты для каждого года в источнике данных..

...