Относительно предыдущего вопроса, который я опубликовал: вычислить разницу для одного столбца для определенных строк в Spotfire
У меня есть новая проблема для него, ниже пример:
Новая функция, которую я хочу реализовать,
- поиск next ближайшего TYPE = 0 для TYPE = 1
- если TYPE = 1 имеет ближайший TYPE = 0, затем отметьте его как 'T' в новом вычисляемом столбце, иначе как NULL
Правила данных:
- Столбец
- Статус содержит {1,2} в порядке, значение по умолчанию нулевого пространства совпадает с последним ближайшим статусом состояния над ним.
- Строка содержит только 0 и 1 случайным образом
вывод должен выглядеть следующим образом:
решение, которое я пробовал:
If(([type]=1) and (first([type]) OVER (intersect(previous([type]),AllNext([status])))=0),"T",Null)
он выглядит хорошо, но проблема заключается в каждой группе состояний, например, в последнем первом типе = 1 (5-я строка) в первой группе состояния = 1, у нее нет ближайшего TYPE = 0, поэтому решение будет Ноль. Но на основе кода это T!:(
любое предложение и идея для него? большое спасибо'! PS: некоторые подробности:
- первое значение типа состояния NULL
- Другое пустое пространство в столбце состояния может быть заполнено, как показано ниже, если оно полезно для выражения:):