Пытаюсь вернуть появление первых ненулевых подряд. Переменная, которую я хочу вернуть, - это финансовый год, когда каждый покупатель впервые начал покупать продукт.
В моем случае я бы хотел вернуть год, в котором они впервые начали. Первое появление «1» в каждой строке представляет, когда они начали первый раз, поэтому я хочу вернуть год для этого клиента, когда появится это первое число.
ID 1950 1951 1953 1955 1959 1965 1968 1972 1974 1975 1976
1 1 1 1 1 1 1
2 1
3 1 1 1
4 1 1 1 1
5 1 1
6 1
7 1
8 1 1
9
10 1 1 1 1 1
11 1 1 1 1
12 1
Добро пожаловать в stackoverflow. Это не бесплатная услуга по написанию кода. Что вы пробовали так далеко? Пожалуйста, редактировать свой вопрос и разместите свой код как минимальный воспроизводимый пример! Что случилось, когда вы его запустили? Что вы ожидали вместо этого? С чем конкретно у вас проблемы?
Я изменил ваш раздел значений на раздел кода, сохранив макет. Но это кажется неправильным, вам придется отредактировать этот вопрос, чтобы значения имели смысл (поместите их в нужное место). В противном случае шанс получить ценный ответ довольно низок.
Используйте расчет уровня детализации (LOD). LOD позволяет вам применить расчет, в данном случае min()
, к набору данных для заданного набора измерений. Вам нужно будет решить, использовать ли FIXED
или INCLUDE
в вашей конкретной ситуации (они ведут себя по-разному при наличии фильтров). Я предполагаю, что ваш столбец идентификатора - это идентификатор клиента.
{ INCLUDE [ID] : Min([Fiscal Year])}
Более подробная информация доступна в интерактивных справочных документах на https://onlinehelp.tableau.com/current/pro/desktop/en-us/calculations_calculatedfields_lod_overview.html.
В приведенном выше примере вы, вероятно, захотите либо FIXED [ID], либо EXCLUDE [Fiscal Year] вместо INCLUDE ID, но, как сказал Сэм, это зависит от деталей
Вычисления LOD часто являются хорошим решением для подобной проблемы, но вы также можете использовать вычисление таблиц - полезно узнать об обоих подходах.
Спасибо, Сэм. Я использовал решение, которое вы предоставили, и оно дало мне то, что я ищу. Очень ценю. В будущем я постараюсь дать более подробную информацию и четко объяснить. Еще раз спасибо :)
Спасибо и Алексу. Я тоже попробовал ваше решение. Оба дали мне одинаковый результат. Я чувствую, что это пригодится мне в других расчетах в будущем. Спасибо
Добро пожаловать! Пожалуйста, прочтите Как создать минимальный, полный и проверяемый пример. Кроме того, отформатируйте столбцы, чтобы мы могли видеть, где находятся значения
1
. Пожалуйста, укажите, что вы уже пробовали.