Я пытаюсь создать переменную, которая будет указывать (на «1»), когда она достигает определенного числа (когда в процессе происходит улучшение). Затем я пытаюсь сбросить базовую линию, так что для ее пометки должен быть достигнут новый базовый уровень (порог). набор данных начинается с одной переменной (x). Я создаю еще одно из первого наблюдения под названием «базовая линия», поэтому я буду сравнивать все остальные «х» с базовой линией. как только я достигну порога, я хочу изменить базовую линию на порог, который он только что достиг.
здесь соответствующая часть кода (обратите внимание, что я уже создал код, который определил базовый уровень ранее в программе).
data combo;
set combo;
if (baseline-x)/8 >1 then do;
flag=1;
baseline=x;
end;
else
flag=0;
run;
здесь соответствующая часть вывода.
Я ожидаю, что флаг будет равен 1 (что и есть) для третьего наблюдения (потому что базовая линия началась в 259, а затем переместилась в 251, как я хочу. Но почему флаг = 1 после этого? Порог не встретил. может кто-нибудь помочь? спасибо Джон