Countif, сравнивающий даты в Tableau

Я пытаюсь создать таблицу, в которой учитываются только участники одного типа обучения (строки), если они посетили другое конкретное обучение (столбец) ПОСЛЕ первого. Я думаю, мне нужно воссоздать функцию counttif, которая сравнивает даты тренировок, но не знаю, как это настроить, чтобы она сравнивала даты тренировок строк и тренировок столбцов. Любые идеи?

Изменить 23 марта

Алекс, ваше решение сработало бы, если бы у меня были разные переменные для дат каждого типа обучения. Есть ли способ построить это без необходимости создавать новые переменные для каждого типа обучения, которое я хочу сравнить? Другими словами, есть ли способ ссылаться на строки и столбцы таблицы в формуле, которая сравнивала бы даты? Итак, что-то вроде «посчитайте, если дата начала этого столбца превышает дату начала этой строки». (в основном, есть ли что-то вроде функции индексации Excel в Tableau?)

Может помочь увидеть, как структурированы мои данные - вот очищенная версия: https://docs.google.com/spreadsheets/d/1YR1Wz-pfGHhBxDQDGYgmemLGoCK0cSvKOeE8w33ZI3s/edit?usp=sharing

На вкладке «таблица» отображается таблица, которую я пытаюсь создать в Tableau.


person user2876912    schedule 22.03.2015    source источник
comment
Сбивает с толку. Попробуйте дать образец того, как выглядит таблица, и чего вы ожидаете в результате для примера.   -  person Inox    schedule 23.03.2015


Ответы (1)


Определите вычисляемое поле для вашего условия, скажем, обученное_после, как:

training_b_date > training_a_date

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

Если вы хотите более точно контролировать разницу между датами, используйте функцию date_diff. Скажите date_diff ("час", training_a_date, training_b_date)> 24, чтобы настоять на коротком периоде ожидания.

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

Поймите, что если какое-либо из ваших полей даты имеет значение NULL, то в этом случае ваше вычисляемое поле будет иметь значение NULL. Агрегатные функции, такие как Sum (), Count () и т. Д., Игнорируют нулевые значения.

person Alex Blakemore    schedule 22.03.2015