Вернуть первое ненулевое значение в столбце / строке таблицы

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

В моем случае я бы хотел вернуть год, в котором они впервые начали. Первое появление «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                           

Добро пожаловать! Пожалуйста, прочтите Как создать минимальный, полный и проверяемый пример. Кроме того, отформатируйте столбцы, чтобы мы могли видеть, где находятся значения 1. Пожалуйста, укажите, что вы уже пробовали.

Theo 07.09.2018 17:27

Добро пожаловать в stackoverflow. Это не бесплатная услуга по написанию кода. Что вы пробовали так далеко? Пожалуйста, редактировать свой вопрос и разместите свой код как минимальный воспроизводимый пример! Что случилось, когда вы его запустили? Что вы ожидали вместо этого? С чем конкретно у вас проблемы?

Robert 07.09.2018 19:44

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

zx485 08.09.2018 00:31
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
3
286
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Используйте расчет уровня детализации (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, но, как сказал Сэм, это зависит от деталей

Alex Blakemore 09.09.2018 16:28

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

Alex Blakemore 09.09.2018 16:30

Спасибо, Сэм. Я использовал решение, которое вы предоставили, и оно дало мне то, что я ищу. Очень ценю. В будущем я постараюсь дать более подробную информацию и четко объяснить. Еще раз спасибо :)

Sabsh 10.09.2018 15:06

Спасибо и Алексу. Я тоже попробовал ваше решение. Оба дали мне одинаковый результат. Я чувствую, что это пригодится мне в других расчетах в будущем. Спасибо

Sabsh 10.09.2018 15:17

Другие вопросы по теме